Replace QObject, QWidget, QImage, QPair, QRgb, QColor, QChar, QString, QIODevice with TQ* version

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
(cherry picked from commit 241e0082f7)
r14.1.x
Michele Calgaro 1 year ago
parent d3f6a5fb3f
commit 83e7d90131

@ -31546,9 +31546,9 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate TQWidget child class' the new class will be "
#~ "derived from TQWidget. If no base class is named, the new class will not "
#~ "have a parent class."
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class."
#~ msgstr ""
#~ "Voeg by die basis klas wat jou nuwe klas\n"
#~ "sal wees afgelei van. As jy het nagegaan\n"
@ -32492,8 +32492,8 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class."
#~ msgstr ""
#~ "Voeg by die basis klas wat jou nuwe klas\n"
@ -32503,14 +32503,14 @@ msgstr ""
#~ "nuwe klas sal nie het 'n ouer klas."
#, fuzzy
#~ msgid "Generate &QWidget child class"
#~ msgid "Generate &TQWidget child class"
#~ msgstr "Genereer Qwidget kind klas"
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""

@ -29616,13 +29616,13 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "ادرج الصنف الاساسى الذى يقدم منه الصنف الجديد. إذا كان لديك تحقق منها 'قم "
#~ "بتوليد صنف ابن QWidget' الصنف الجديد سوفه يكون اتى من QWidget زإذا كان "
#~ "بتوليد صنف ابن TQWidget' الصنف الجديد سوفه يكون اتى من TQWidget زإذا كان "
#~ "ليس هنالك صنف اساسى مسمى، الصنف الجديد ليس لديها صنف اب علوى. كذللك "
#~ "يمكنك استخدام اصناف القوالب هنا (مثل الصنف الاساسى <int, int>("

@ -31245,9 +31245,9 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate TQWidget child class' the new class will be "
#~ "derived from TQWidget. If no base class is named, the new class will not "
#~ "have a parent class."
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class."
#~ msgstr ""
#~ "Araya əlavə et o\n"
#~ "\n"
@ -37330,8 +37330,8 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class."
#~ msgstr ""
#~ "Araya əlavə et o\n"
@ -37341,17 +37341,17 @@ msgstr ""
#~ "."
#, fuzzy
#~ msgid "Generate &QWidget child class"
#~ msgstr "QWidget-Childclass yarat"
#~ msgid "Generate &TQWidget child class"
#~ msgstr "TQWidget-Childclass yarat"
#, fuzzy
#~ msgid ""
#~ "This offers additional options to your new class.\n"
#~ "If you check \"Use header/cpp-templates\", your name and\n"
#~ "email adress will be added into the new generated files\n"
#~ "If you check \"Generate a QWidget-Childclass\", the new class\n"
#~ "will use QWidget as the baseclass. This is also useful for\n"
#~ "using baseclasses derived from QWidget, e.g. QDialog."
#~ "If you check \"Generate a TQWidget-Childclass\", the new class\n"
#~ "will use TQWidget as the baseclass. This is also useful for\n"
#~ "using baseclasses derived from TQWidget, e.g. QDialog."
#~ msgstr ""
#~ "hədəf\n"
#~ " ad və\n"
@ -37363,8 +37363,8 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""

@ -4616,6 +4616,5 @@ msgstr ""
#~ msgid "Diagram Save Error."
#~ msgstr "Памылка захавання"
#, fuzzy
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -3895,5 +3895,5 @@ msgstr ""
#~ msgid "Select Classes to Import"
#~ msgstr "Dibab ar renkadoù da enporzh"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23670,10 +23670,10 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Ubacite baznu klasu iz koje će vaša nova klasa biti izvedena. Ako ste "
"uključili 'Generiši dječiju klasu TQWidget-a', nova klasa će biti izvedena "
"iz TQWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
"roditeljsku klasu. Ovdje također možete koristiti šablonske klase (npr. "
"BaseClass<int, int>)"
"uključili 'Generiši dječiju klasu TQWidget-a', nova klasa će biti izvedena iz "
"TQWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati roditeljsku "
"klasu. Ovdje također možete koristiti šablonske klase (npr. BaseClass<int, "
"int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -31543,14 +31543,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Ubacite baznu klasu iz koje će vaša nova klasa biti izvedena. Ako ste "
#~ "uključili 'Generiši dječiju klasu QWidget-a', nova klasa će biti izvedena "
#~ "iz QWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "uključili 'Generiši dječiju klasu TQWidget-a', nova klasa će biti izvedena "
#~ "iz TQWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "roditeljsku klasu. Ovdje također možete koristiti šablonske klase (npr. "
#~ "BaseClass<int, int>)"

@ -464,7 +464,7 @@ regulars de perl, ni de <command>grep</command>, per exemple.</synopsis>
<term><userinput>(?!PATRÓ)</userinput> (Anticipació negativa)</term>
<listitem><para>L'anticipació negativa prevé una possible coincidència si la següent part de la cadena coincideix amb el <emphasis>PATRÓ</emphasis>.</para>
<para>L'expressió <userinput>const \w+\b(?!\s*&amp;)</userinput> coincidirà amb <quote>const char</quote> en la cadena <quote>const char* foo</quote>, mentre que no coincidirà amb <quote>const QString</quote> en <quote>const QString&amp; bar</quote>, atès que el <quote>&amp;</quote> coincideix amb el patró de la declaració d'anticipació negativa.</para>
<para>L'expressió <userinput>const \w+\b(?!\s*&amp;)</userinput> coincidirà amb <quote>const char</quote> en la cadena <quote>const char* foo</quote>, mentre que no coincidirà amb <quote>const TQString</quote> en <quote>const TQString&amp; bar</quote>, atès que el <quote>&amp;</quote> coincideix amb el patró de la declaració d'anticipació negativa.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = S'està carregant el KDE
<para>Abans de que la vostra aplicació comenci un intensiu treball de càlcul, o abans de que comenci a carregar els connectors, &etc;, invoqueu a &ksplash; tal i com segueix:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Si voleu afegir un missatge a mostrar amb una icona, useu</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Les classes del connector hauran de proveir una funció <literal>static</literal> anomenada <function>names</function> que retorni una llista de noms per als quals ha estat invocada.</para></listitem>
<listitem><para>Si el connector es pot configurar en el mòdul del centre de control, aquest haurà de proveir una classe <literal>ThemeEngineConfig</literal> per a la configuració.</para></listitem>
<listitem><para>La classe del connector haurà de solapar a almenys una de les funcions virtuals <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> i <function>slotUpdateSteps</function> per a fer-se usable.</para></listitem>
<listitem><para>El constructor ha de prendre la forma <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> de manera que sigui emprat amb <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>El constructor ha de prendre la forma <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> de manera que sigui emprat amb <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>L'últim requeriment podria ser complicat, però, tal i com veurem més endavant, afegint una simple línia als vostres fitxers font, usualment podreu ignorar-lo.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analitzem l'anterior llistat. La classe <classname>Theme2k</classname> satisfà les convencions de nom, i és inherent de <classname>ThemeEngine</classname>. Aquesta proveeix un <methodname>Theme2k::names()</methodname>, i disposa d'un constructor que pren els paràmetres requerits: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> i també proveeix d'un mètode <methodname>Theme2k::slotSetText()</methodname> simple. De moment, no us preocupeu per la classe <classname>RotWidget</classname>. Aquesta és un petit estri (en anglès "widjet") que proveeix d'alguns afegits visuals per l'usuari. El nostre connector és molt simple i no mostra cap icona o barra de progrés. Si us agradaria mostrar icones, solapeu la funció <function>slotSetPixmap</function>. Existeixen funcions similars per establir el rang de la barra de progrés (<function>slotUpdateSteps</function>) i l'increment de la passa actual (<function>slotUpdateProgress</function>). </para>
<para>Analitzem l'anterior llistat. La classe <classname>Theme2k</classname> satisfà les convencions de nom, i és inherent de <classname>ThemeEngine</classname>. Aquesta proveeix un <methodname>Theme2k::names()</methodname>, i disposa d'un constructor que pren els paràmetres requerits: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> i també proveeix d'un mètode <methodname>Theme2k::slotSetText()</methodname> simple. De moment, no us preocupeu per la classe <classname>RotWidget</classname>. Aquesta és un petit estri (en anglès "widjet") que proveeix d'alguns afegits visuals per l'usuari. El nostre connector és molt simple i no mostra cap icona o barra de progrés. Si us agradaria mostrar icones, solapeu la funció <function>slotSetPixmap</function>. Existeixen funcions similars per establir el rang de la barra de progrés (<function>slotUpdateSteps</function>) i l'increment de la passa actual (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Implementació del connector</title>
@ -686,7 +686,7 @@ private:
<para>La macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> està declarada dintre de <filename>kgenericfactory.h</filename>. D'ara en endavant el constructor! Atès que aquest és un connector molt simple, el constructor serà molt minimalista.</para>
<example>
<title>Constructor del connector</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Funcions DCOP</title>
<para>La interfície <abbrev>DCOP</abbrev> de &kstars; inclou les següents funcions: <itemizedlist>
<listitem><para><function> lookTowards( const QString direcció )</function>: Apunta la vista del focus en una direcció especificada per l'argument. Aquest pot ser el nom d'un objecte en el cel o una de les següents paraules (o abreviacions) direccionals: zenith (z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direcció )</function>: Apunta la vista del focus en una direcció especificada per l'argument. Aquest pot ser el nom d'un objecte en el cel o una de les següents paraules (o abreviacions) direccionals: zenith (z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ar, double dec )</function>: Apunta la vista del focus cap a les coordenades equatorials especificades. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Pausa durant t segons abans de continuar amb els subsegüents comandaments a l'script. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Atura l'execució de l'script fins que l'usuari premi la tecla especificada. En aquest punt, no podreu especificar uns combinació de tecles (tals com <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); sinó emprar tecles simples. Podeu escriure <quote>space</quote> per a indicar la barra d'espai. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Atura l'execució de l'script fins que l'usuari premi la tecla especificada. En aquest punt, no podreu especificar uns combinació de tecles (tals com <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); sinó emprar tecles simples. Podeu escriure <quote>space</quote> per a indicar la barra d'espai. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Permet decidir si el mode de seguiment està en marxa. </para></listitem>
<listitem><para><function> changeViewOption( const QString opció, const QString valor )</function>: Ajusta una opció de la vista. Hi ha dotzenes i dotzenes d'opcions disponibles; bàsicament tot el que podeu canviar en la finestra <guilabel>Opcions de la vista</guilabel> també es poden canviar aquí. El primer argument és el nom de l'opció (els noms es prenen del fitxer de configuració <filename>kstarsrc</filename>) i el segon argument és el valor desitjat. L'analitzador d'arguments està dissenyat per a ser robust, de manera que si accidentament li envieu dades errònees ell fallarà amb gràcia. </para></listitem>
<listitem><para><function> changeViewOption( const TQString opció, const TQString valor )</function>: Ajusta una opció de la vista. Hi ha dotzenes i dotzenes d'opcions disponibles; bàsicament tot el que podeu canviar en la finestra <guilabel>Opcions de la vista</guilabel> també es poden canviar aquí. El primer argument és el nom de l'opció (els noms es prenen del fitxer de configuració <filename>kstarsrc</filename>) i el segon argument és el valor desitjat. L'analitzador d'arguments està dissenyat per a ser robust, de manera que si accidentament li envieu dades errònees ell fallarà amb gràcia. </para></listitem>
<listitem><para><function> setGeoLocation( const QString ciutat, const QString provincia, const QString ciutat )</function>: Canvia la localització d'observació a la ciutat especificada. Si no es troba cap ciutat que hi cassi, llavores no succeirà res. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString ciutat, const TQString provincia, const TQString ciutat )</function>: Canvia la localització d'observació a la ciutat especificada. Si no es troba cap ciutat que hi cassi, llavores no succeirà res. </para></listitem>
<listitem><para><function> stop()</function> {rellotge]: Atura el rellotge de simulació. </para></listitem>

@ -47,8 +47,8 @@
<refsect1>
<title>Exemples</title>
<para>Per a mostrar l'ajuda sobre la classe <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Per a mostrar l'ajuda sobre la classe <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -4013,5 +4013,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Apropa:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23633,9 +23633,9 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Inseriu la classe base amb la qual es derivarà la vostra nova classe. Si heu "
"marcat 'Genera classe filla de TQWidget', la nova classe derivarà de "
"TQWidget. Si no se'n tria cap, la nova classe no tindrà una classe pare. "
"Aquí també podeu emprar classes de plantilla (com BaseClass<int, int>)"
"marcat 'Genera classe filla de TQWidget', la nova classe derivarà de TQWidget. "
"Si no se'n tria cap, la nova classe no tindrà una classe pare. Aquí també "
"podeu emprar classes de plantilla (com BaseClass<int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -29066,14 +29066,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Inseriu la classe base amb la qual es derivarà la vostra nova classe. Si "
#~ "heu marcat 'Genera classe filla de QWidget', la nova classe derivarà de "
#~ "QWidget. Si no se'n tria cap, la nova classe no tindrà una classe pare. "
#~ "heu marcat 'Genera classe filla de TQWidget', la nova classe derivarà de "
#~ "TQWidget. Si no se'n tria cap, la nova classe no tindrà una classe pare. "
#~ "Aquí també podeu emprar classes de plantilla (com BaseClass<int, int>)"
#, fuzzy

@ -49,8 +49,8 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"Toto je aktuální barva v reprezentovaná hexadecimálním RGB, jak ji můžete "
"použít v HTML nebo pro název TQColor. Pozadí obdélníku zobrazuje barvu "
"pixelu uvnitř malého čtverečku na konci čáry ukazatele."
"použít v HTML nebo pro název TQColor. Pozadí obdélníku zobrazuje barvu pixelu "
"uvnitř malého čtverečku na konci čáry ukazatele."
#: klineal.cpp:147
msgid "KRuler"

@ -3980,5 +3980,5 @@ msgstr ""
#~ msgid "Diagram Save Error."
#~ msgstr "Chyba při ukládání diagramu."
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -465,7 +465,7 @@ udtryk i perl, eller med dem for eksempel i
<term><userinput>(?!PATTERN)</userinput> (Negativ fremadskuen)</term>
<listitem><para>Den negative fremadskuen forhindrer en mulig match i at blive anerkendt hvis den følgende del af den søgte streng ikke matcher dens <emphasis>PATTERN</emphasis>.</para>
<para>Udtrykket <userinput>const \w+\b(?!\s*&amp;)</userinput> vil matche ved <quote>const char</quote> i strengen <quote>const char* foo</quote> men den ikke kan matche <quote>const QString</quote> i <quote>const QString&amp; bar</quote> fordi <quote>&amp;</quote> matcher den negative fremadskuen påstandsmønster.</para>
<para>Udtrykket <userinput>const \w+\b(?!\s*&amp;)</userinput> vil matche ved <quote>const char</quote> i strengen <quote>const char* foo</quote> men den ikke kan matche <quote>const TQString</quote> i <quote>const TQString&amp; bar</quote> fordi <quote>&amp;</quote> matcher den negative fremadskuen påstandsmønster.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Indlæser KDE
<para>Før dit program starter sit beregningsintensive arbejde, eller før det begynder med at indlæse plugin, &etc;, startes &ksplash; som følger:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Når du ønsker at vise en besked med eller uden ikon bruges</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Plugin-klasser skal sørge for en <literal>statisk</literal> funktion der hedder <function>names</function> der returnerer en liste af navne ved hvilke de kan startes.</para></listitem>
<listitem><para>Hvis dit plugin kan indstilles i kontrolcenter-modulet, skal det sørge for en <literal>ThemeEngineConfig</literal>-baseret klasse for indstillingen.</para></listitem>
<listitem><para>Plugin-klasser skal gå forud for mindst en af de virtuelle funktioner <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> og <function>slotUpdateSteps</function> for at være brugbare.</para></listitem>
<listitem><para>Konstruktøren skal være på formen <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> så den kan bruges med <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Konstruktøren skal være på formen <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> så den kan bruges med <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>Det sidste krav synes måske kompliceret, men, som vi skal se senere, du kan sædvanligvis ignorere det ved at tilføje en enkelt linje til din kildefil.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Lad os analysere ovenstående. <classname>Theme2k</classname>-klassen tilfredsstiller navnekonventionerne, og er arvet fra <classname>ThemeEngine</classname>. Den sørger for en <methodname>Theme2k::names()</methodname>, og har en konstruktør der tager de krævede parametre: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> og sørger også for en simpel <methodname>Theme2k::slotSetText()</methodname> metode. Indtil videre bekymrer vi os ikke om <classname>RotWidget</classname>-klassen. Det er en lille kontrol der sørger for nogle øjenlækkerier for brugeren. Vores plugin er meget simpelt og viser ikke nogen ikoner og har ingen fremgangslinje. Hvis du gerne vil vise ikoner, så sæt <function>slotSetPixmap</function>-funktionen ud af kraft. Lignende funktioner eksisterer til at sætte fremgangslinjens område (<function>slotUpdateSteps</function>) og til at forøge (<function>slotUpdateProgress</function>) det nuværende skridt. </para>
<para>Lad os analysere ovenstående. <classname>Theme2k</classname>-klassen tilfredsstiller navnekonventionerne, og er arvet fra <classname>ThemeEngine</classname>. Den sørger for en <methodname>Theme2k::names()</methodname>, og har en konstruktør der tager de krævede parametre: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> og sørger også for en simpel <methodname>Theme2k::slotSetText()</methodname> metode. Indtil videre bekymrer vi os ikke om <classname>RotWidget</classname>-klassen. Det er en lille kontrol der sørger for nogle øjenlækkerier for brugeren. Vores plugin er meget simpelt og viser ikke nogen ikoner og har ingen fremgangslinje. Hvis du gerne vil vise ikoner, så sæt <function>slotSetPixmap</function>-funktionen ud af kraft. Lignende funktioner eksisterer til at sætte fremgangslinjens område (<function>slotUpdateSteps</function>) og til at forøge (<function>slotUpdateProgress</function>) det nuværende skridt. </para>
</sect1>
<sect1 id="Implementation">
<title>Implementation af plugin</title>
@ -686,7 +686,7 @@ private:
<para>Makroen <constant>K_EXPORT_COMPONENT_FACTORY</constant> erklæres i <filename>kgenericfactory.h</filename>. Videre til konstruktøren! Da dette er et meget simpelt plugin, er konstruktøren temmelig ligetil.</para>
<example>
<title>Plugin-konstruktør</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP-funktioner</title>
<para>&kstars; <abbrev>DCOP</abbrev>-grænseflade indeholder følgende funktioner: <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function>: Drejer stjernekortet i den retning funktionens argument angiver. Det kan være navnet på ethvert objekt på himlen eller et af fælgende retningsord eller forkortelser: zenit (eller z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function>: Drejer stjernekortet i den retning funktionens argument angiver. Det kan være navnet på ethvert objekt på himlen eller et af fælgende retningsord eller forkortelser: zenit (eller z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Drejer stjernekortet i retning af de angivne koordinater i ækvatorsystemet. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Hold pause i t sekunder før de næste kommandoer i scriptet udføres. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Stop udførelsen af scriptet indtil brugeren trykker på en bestemt tast. På nuværende tidspunkt kan man kun bruge enkelttaster ikke tastekombinationer (som f.eks. <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>). Skriv <quote>space</quote> for at bruge mellemrumstasten. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Stop udførelsen af scriptet indtil brugeren trykker på en bestemt tast. På nuværende tidspunkt kan man kun bruge enkelttaster ikke tastekombinationer (som f.eks. <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>). Skriv <quote>space</quote> for at bruge mellemrumstasten. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Slår følgning af et objekt til og fra. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Tilret en visningsindstilling. Der er mange indstillinger der kan tilrettes. Alle indstillinger der kan ændres i vinduet <guilabel>Indstil &kstars;</guilabel> kan tilrettes her også. Det første argument er indstillingens navn (navnene tages fra opsætningsfilen <filename>kstarsrc</filename>). Det andet argument er den værdi du vil give indstillingen. Argumentbehandlingen er skrevet så den skulle være solid, så hvis du skriver noget forkert skulle den fejle på en pæn måde. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Tilret en visningsindstilling. Der er mange indstillinger der kan tilrettes. Alle indstillinger der kan ændres i vinduet <guilabel>Indstil &kstars;</guilabel> kan tilrettes her også. Det første argument er indstillingens navn (navnene tages fra opsætningsfilen <filename>kstarsrc</filename>). Det andet argument er den værdi du vil give indstillingen. Argumentbehandlingen er skrevet så den skulle være solid, så hvis du skriver noget forkert skulle den fejle på en pæn måde. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Ændrer det sted himlen ses fra til den angivne by. Hvis den ikke findes i KStars sker der ingenting. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Ændrer det sted himlen ses fra til den angivne by. Hvis den ikke findes i KStars sker der ingenting. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Stopper tiden i simuleringen. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Generiske enhedsfunktioner: Funktioner til at oprette eller lukke af for enheder, osv.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function>: Opret en INDI-enhed enten i lokaltilstand eller i servertilstand.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function>: Luk af for en INDI-enhed.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function>: Forbind eller afbryd en INDI-enhed.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function>: Indstil INDI-enhedens forbindelsesport.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function>: Aktivér en INDI-handling. Handlingen kan være et hvilket som helst <emphasis>element</emphasis> i en <emphasis>skifteegenskab</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function>: Hold pause i kørsel af scriptet til angiven <emphasis>handlingsegenskab</emphasis> returnerer med status O.k.</para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function>: Opret en INDI-enhed enten i lokaltilstand eller i servertilstand.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function>: Luk af for en INDI-enhed.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function>: Forbind eller afbryd en INDI-enhed.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function>: Indstil INDI-enhedens forbindelsesport.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function>: Aktivér en INDI-handling. Handlingen kan være et hvilket som helst <emphasis>element</emphasis> i en <emphasis>skifteegenskab</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function>: Hold pause i kørsel af scriptet til angiven <emphasis>handlingsegenskab</emphasis> returnerer med status O.k.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Teleskopfunktioner: Funktioner til at styre teleskopbevægelser og status.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function>: Indstil teleskopets tilstand eller handling. Tilgængelige tilvalg er SLEW, TRACK, SYNC, PARK og ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function>: Indstil teleskopets JNow-målkoordinater til <emphasis>RA</emphasis> og <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function>: Indstil teleskopets JNow-målkoordinater til koordinaterne for <emphasis>objectName</emphasis>. Kstars slår objektnavnet op i sin database og henter RA og DEC når de er fundet.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function>: Sæt teleskopets geografiske sted til de længdegrader og breddegrader som angives. Længdegraden måles mod øst fra Greenwich, i Storbritannien. Selvom det er almindeligt at bruge negative længdegrader for den vestlige halvklode, kræver INDI imidlertid længdegrader mellem 0 og 360 grader. Hvis du har en negative længdegrad, så læg blot 360 grader til for at få værdien som INDI forventer sig. For eksempel har Calgary i Canada følgende koordinater i KStars: Længdegrad -114 04 58 og breddegrad 51 02 58. Altså ville INDI behøve længdegraden 360 - 114,069 = 245,917 grader.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function>: Indstil teleskopets UTC-tid i ISO 8601-format. Formatet er ÅÅÅÅ/MM/DDTTT:MM:SS.(f.eks. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function>: Indstil teleskopets tilstand eller handling. Tilgængelige tilvalg er SLEW, TRACK, SYNC, PARK og ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function>: Indstil teleskopets JNow-målkoordinater til <emphasis>RA</emphasis> og <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString deviceName, TQString objectName)</function>: Indstil teleskopets JNow-målkoordinater til koordinaterne for <emphasis>objectName</emphasis>. Kstars slår objektnavnet op i sin database og henter RA og DEC når de er fundet.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function>: Sæt teleskopets geografiske sted til de længdegrader og breddegrader som angives. Længdegraden måles mod øst fra Greenwich, i Storbritannien. Selvom det er almindeligt at bruge negative længdegrader for den vestlige halvklode, kræver INDI imidlertid længdegrader mellem 0 og 360 grader. Hvis du har en negative længdegrad, så læg blot 360 grader til for at få værdien som INDI forventer sig. For eksempel har Calgary i Canada følgende koordinater i KStars: Længdegrad -114 04 58 og breddegrad 51 02 58. Altså ville INDI behøve længdegraden 360 - 114,069 = 245,917 grader.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function>: Indstil teleskopets UTC-tid i ISO 8601-format. Formatet er ÅÅÅÅ/MM/DDTTT:MM:SS.(f.eks. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Kamera/CCD-funktioner: Funktioner til at styre kamera/CCD-egenskaber og status.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function>: Indstil CCD-kredsens måltemperatur i grader Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function>: Indstil CCD-rammetype. Tilgængelige tilvalg er FRAME_LIGHT, FRAME_BIAS, FRAME_DARK og FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function>: Start eksponering med CCD eller kamera med længden som angives af <emphasis>timeout</emphasis> i sekunder.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function>: Indstil CCD-kredsens måltemperatur i grader Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString deviceName, TQString type)</function>: Indstil CCD-rammetype. Tilgængelige tilvalg er FRAME_LIGHT, FRAME_BIAS, FRAME_DARK og FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function>: Start eksponering med CCD eller kamera med længden som angives af <emphasis>timeout</emphasis> i sekunder.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fokuseringsfunktioner: Funktioner til at styre fokuseringsenhedens bevægelse og status.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function>: Angiv fokuseringsenhedens hastighed. Tilgængelige tilvalg er FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM og FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function>: Indstil tidsgrænsen i sekunder for alle følgende startINDIFocus-handlinger.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function>: Flyt enten fokuseringsenheden indad (focusDir = 0) eller udad (focusDir = 1). Handlingens hastighed og varighed angives af funktionerne <function>setINDIFocusSpeed()</function> og <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function>: Angiv fokuseringsenhedens hastighed. Tilgængelige tilvalg er FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM og FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function>: Indstil tidsgrænsen i sekunder for alle følgende startINDIFocus-handlinger.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function>: Flyt enten fokuseringsenheden indad (focusDir = 0) eller udad (focusDir = 1). Handlingens hastighed og varighed angives af funktionerne <function>setINDIFocusSpeed()</function> og <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Filterfunktioner: Funktioner til at kontrollere filterpositioner.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function>: Ændr filterposition til <varname>filter_num</varname>. Brugeren kan tildele alias for filternummer i dialogen <guimenuitem>Indstil INDI</guimenuitem> under menuen <guimenu>Enheder</guimenu> (f.eks. Filter 1 = Rød, Filter 2 = Grøn, etc.).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function>: Ændr filterposition til <varname>filter_num</varname>. Brugeren kan tildele alias for filternummer i dialogen <guimenuitem>Indstil INDI</guimenuitem> under menuen <guimenu>Enheder</guimenu> (f.eks. Filter 1 = Rød, Filter 2 = Grøn, etc.).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Du kan få en liste med tilgængelige &DCOP;-grænseflader, for at bruge de rigtige flag, som vist i dette eksempel: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -752,7 +752,7 @@ public:
<para>er noget anderledes end at følge en NULL-peger. Du fortalte slet ikke objektet hvad det er, og nu forsøger du at bruge det. Gætværket her er at du vil have en ny lokal instans af et Arts::Synth_PLAY-objekt. Du kan naturligvis have villet gøre noget andet (såsom at oprette objektet et andet sted, eller bruge et eksisterende fjernobjekt). Det er i alle tilfælde en bekvem genvej til at oprette objekter. At oprette et objekt når det først bruges virker ikke når du allerede har tildelt det til noget andet (som en null-reference). </para>
<para>Den tilsvarende C++ terminologi ville være <programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> som naturligvis helt enkelt giver en segmenteringsfejl i C++. Så dette er anderledes her. Denne måde at oprette objekt er tricket, eftersom det ikke er nødvendigt at der findes en implementering for din grænseflade. </para>

@ -1219,7 +1219,7 @@ struct TypeDef {
<para>Der er ingen grund til at basere mellemprogrammer for multimedie på &Qt;. Ved at bestemme sig for det, og bruge alle de behagelige &Qt;-strømme og andre ting, kan det let føre til at mellemprogrammer kun bliver en sag for &Qt;-(eller i virkeligheden kun &kde;). Jeg mener at hvis jeg nogensinde ser at GNOME også bruger &DCOP;, eller noget lignende, er det naturligvis beviset for at jeg har taget fejl. </para>
<para>Selvom jeg ved at &DCOP; i grunden ikke kender til de datatyper som den sender, så man ville kunne bruge &DCOP; uden &Qt;, se hvordan den bruges i daglig &kde;-brug: man sender typer rundt såsom <classname>QString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, .... Disse bruger &Qt;'s-serialisering. Så hvis nogen vælger at understøtte &DCOP; i et GNOME-program, skal han enten angive at han bruger <classname>QString</classname>,... typer (selvom han ikke gør det), og emulere måden som &Qt; bruger til strømme, eller også skulle han sende andre streng-, pixmap- og rect-typer rundt, og på den måde alligevel ikke kunne virke sammen med &kde;-programmer. </para>
<para>Selvom jeg ved at &DCOP; i grunden ikke kender til de datatyper som den sender, så man ville kunne bruge &DCOP; uden &Qt;, se hvordan den bruges i daglig &kde;-brug: man sender typer rundt såsom <classname>TQString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, .... Disse bruger &Qt;'s-serialisering. Så hvis nogen vælger at understøtte &DCOP; i et GNOME-program, skal han enten angive at han bruger <classname>TQString</classname>,... typer (selvom han ikke gør det), og emulere måden som &Qt; bruger til strømme, eller også skulle han sende andre streng-, pixmap- og rect-typer rundt, og på den måde alligevel ikke kunne virke sammen med &kde;-programmer. </para>
<para>Nå, under alle omstændigheder var det altid meningen at &arts; var beregnet til at virke med eller uden &kde;, med eller uden &Qt;, med eller uden X11, og måske til og med med eller uden &Linux; (og jeg har ikke engang indvendinger mod personer som tilretter den til operativsystemer som ikke er frie). </para>

@ -1711,8 +1711,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>afbryd en allerede skemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1754,8 +1754,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>udløs en allerede skemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1799,8 +1799,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>udløs eller annullér en allerede skemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1850,43 +1850,43 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>skemalæg en ny alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>, int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -1923,7 +1923,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Angiver baggrundsfarve for at vise meddelelsen. Formatet på strengen kan være <quote>#RRGGBB</quote> (som returneres af <methodname>QColor::name()</methodname>), hvor RR, GG og BB er tocifrede hexadecimale værdier for rød, grøn og blå. Alternativt kan strengen være et af de andre formater som accepteres af <methodname>QColor::setNamedColor()</methodname>, såsom et navn fra X-farvedatabasen (f.eks. <quote>red</quote> eller <quote>steelblue</quote>). Angiv strengens værdi som nul for at vælge nuværende standardbaggrundsfarve.</para>
<para>Angiver baggrundsfarve for at vise meddelelsen. Formatet på strengen kan være <quote>#RRGGBB</quote> (som returneres af <methodname>TQColor::name()</methodname>), hvor RR, GG og BB er tocifrede hexadecimale værdier for rød, grøn og blå. Alternativt kan strengen være et af de andre formater som accepteres af <methodname>TQColor::setNamedColor()</methodname>, såsom et navn fra X-farvedatabasen (f.eks. <quote>red</quote> eller <quote>steelblue</quote>). Angiv strengens værdi som nul for at vælge nuværende standardbaggrundsfarve.</para>
</listitem>
</varlistentry>
@ -2025,21 +2025,21 @@ continuously in the background and alarms are always enabled.</para>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -2047,15 +2047,15 @@ continuously in the background and alarms are always enabled.</para>
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2092,7 +2092,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Angiver baggrundsfarve for at vise filen. Formatet på strengen kan være <quote>#RRGGBB</quote> (som returneres af <methodname>QColor::name()</methodname>), hvor RR, GG og BB er tocifrede hexadecimale værdier for rød, grøn og blå. Alternativt kan strengen være et af de andre formater som accepteres af <methodname>QColor::setNamedColor()</methodname>, såsom et navn fra X-farvedatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Angiv strengens værdi som nul for at vælge nuværende standardbaggrundsfarve.</para>
<para>Angiver baggrundsfarve for at vise filen. Formatet på strengen kan være <quote>#RRGGBB</quote> (som returneres af <methodname>TQColor::name()</methodname>), hvor RR, GG og BB er tocifrede hexadecimale værdier for rød, grøn og blå. Alternativt kan strengen være et af de andre formater som accepteres af <methodname>TQColor::setNamedColor()</methodname>, såsom et navn fra X-farvedatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Angiv strengens værdi som nul for at vælge nuværende standardbaggrundsfarve.</para>
</listitem>
</varlistentry>
@ -2178,29 +2178,29 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>skemalæg en ny alarm som kører en skalkommando.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2302,41 +2302,41 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>skemalæg et ny alarm som sender e-mail.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
nt <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endTime</replaceable>)
const TQString&amp; <replaceable>endTime</replaceable>)
</synopsis>
<refsect2>
@ -2465,7 +2465,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Viser <link linkend="alarm-edit-dlg">dialogen for alarmredigering</link> til at redigere en alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>begivenhed-ID</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>begivenhed-ID</replaceable>)
</synopsis>
<refsect2>
@ -2503,7 +2503,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Viser <link linkend="alarm-edit-dlg">dialogen for alarmredigering</link> for at redigere en ny alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>skabelonnavn</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>skabelonnavn</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Udskrevet den: 2004-07-13 18:10
<refpurpose>Returnerer &karm;s version.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Udskrevet den: 2004-07-13 18:10
<refpurpose>Returnerer &karm;s afslutning.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Udskrevet den: 2004-07-13 18:10
<refpurpose>Tjek om en aktivitet på topniveau findes.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString aktivitetsnavn)
<synopsis>TQString hastodo(TQString aktivitetsnavn)
</synopsis>
<refsect2>
<title>Parametre</title>
@ -786,7 +786,7 @@ Udskrevet den: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Beskrivelse</title>
<para><function>hastodo(QString taskname)</function> er et &DCOP;-kald som leder efter en opgave med angivet navn. Hvis den findes, returneres iCalendar-brugerid som identifierer opgaven. Hvis den ikke findes, returneres en tom streng. </para>
<para><function>hastodo(TQString taskname)</function> er et &DCOP;-kald som leder efter en opgave med angivet navn. Hvis den findes, returneres iCalendar-brugerid som identifierer opgaven. Hvis den ikke findes, returneres en tom streng. </para>
<para>Filen som gennemsøges er iCalendar-filen som &karm; for øjeblikket har åben. Alle opgavetræer gennemsøges, ikke kun opgaver på øverste niveau. Hvis mere end en opgave har et matchende navn, returneres den første som findes.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Udskrevet den: 2004-07-13 18:10
<refpurpose>Tilføj et nyt gøremål.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString gøremålsnavn)
<synopsis>TQString addtodo(TQString gøremålsnavn)
</synopsis>
<refsect2>
<title>Parametre</title>
@ -817,7 +817,7 @@ Udskrevet den: 2004-07-13 18:10
<refsect1>
<title>Beskrivelse</title>
<para><function>addtodo(QString todoname)</function> er en &DCOP;-funktion som tilføjer en ny opgave på øverste niveau i nuværende lagringsobjekt. Den nye opgaves brugerid returneres. </para>
<para><function>addtodo(TQString todoname)</function> er en &DCOP;-funktion som tilføjer en ny opgave på øverste niveau i nuværende lagringsobjekt. Den nye opgaves brugerid returneres. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Eksempler</title>
<para>For at vise hjælp for klassen <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>For at vise hjælp for klassen <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>Det andet objekt i vort program er trykknappen, en instans af klassen <classname>QPushButton</classname>. Af de to konstruktorer der er til at oprette klassen, bruger vi den anden. Den tager en tekst, som er tekstindholdet i knappen. Her er det strengen "Hello world!". Derefter kalder vi metoden <methodname>resize()</methodname> for at ændre størrelse på knappen ifølge dens indhold. Knappen skal være større for at gøre strengen fuldstændigt synlig. </para>
<para>Men hvad gælder for metoden <methodname>show()</methodname>? Nu mærker du, at som de fleste andre grafiske komponenter, er <classname>QPushButton</classname> baseret på enkelt arv. Dokumentationen siger, Arver <classname>QButton</classname>. Følg linket til klassen <classname>QButton</classname>. Det viser mange andre kontroller som arves af <classname>QPushButton</classname>, som vi senere bruger til at forklare signal/slot-mekanismen. Under alle omstændigheder er metoden <methodname>show()</methodname> ikke på listen, og derfor skal den være en metode som også sørges for via arv. Klassen som <classname>QButton</classname> arver er <classname>QWidget</classname>. Følg kun linket igen, så ser du en hel mængde metoder som klassen QWidget sørger for, inklusive metoden <methodname>show()</methodname>. Nu forstår vi hvad der blev gjort i eksemplet med knappen: <orderedlist>
<para>Men hvad gælder for metoden <methodname>show()</methodname>? Nu mærker du, at som de fleste andre grafiske komponenter, er <classname>QPushButton</classname> baseret på enkelt arv. Dokumentationen siger, Arver <classname>QButton</classname>. Følg linket til klassen <classname>QButton</classname>. Det viser mange andre kontroller som arves af <classname>QPushButton</classname>, som vi senere bruger til at forklare signal/slot-mekanismen. Under alle omstændigheder er metoden <methodname>show()</methodname> ikke på listen, og derfor skal den være en metode som også sørges for via arv. Klassen som <classname>QButton</classname> arver er <classname>TQWidget</classname>. Følg kun linket igen, så ser du en hel mængde metoder som klassen TQWidget sørger for, inklusive metoden <methodname>show()</methodname>. Nu forstår vi hvad der blev gjort i eksemplet med knappen: <orderedlist>
<listitem><para>Lav en instans af <classname>QPushButton</classname>, og brug den anden konstruktor til at angive knappens tekst</para></listitem>
<listitem><para>Ændr størrelsen på kontrollen til dens indhold</para></listitem>
<listitem><para>Sæt kontrollen som hovedkontrol instansen af <classname>QApplication</classname></para></listitem>
<listitem><para>Fortæl den grafiske kontrol at den skal vises på skærmen ved at kalde <methodname>show()</methodname>, en metode som blev arvet fra <classname>QWidget</classname></para></listitem>
<listitem><para>Fortæl den grafiske kontrol at den skal vises på skærmen ved at kalde <methodname>show()</methodname>, en metode som blev arvet fra <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>Efter at have kaldet metoden <methodname>exec()</methodname>, er programmet synligt for brugeren, og viser et vindue med knappen "Hello world!". Bemærk at programmer med grafiske grænseflader opfører sig noget anderledes sammenlignet med procedurebaserede program. Det vigtigste er at programmet går ind i en såkaldt "hovedbegivenhedsløkke". Det betyder at programmet skal vente på brugerens handlinger og derefter reagere på dem. Det betyder også, for et QT-program, at programmet skal være i hovedbegivenhedsløkken for at starte begivenhedshåndteringen. Næste afsnit beskriver kortfattet hvad det betyder for programmøren og hvad QT tilbyder for at håndtere begivenheder. </para>
<note><para>For brugere som allerede er avancerede: Knappen har ingen overliggende kontrol deklareret i konstruktoren. Derfor er den en topniveaukontrol og kører med en lokal begivenhedsløkke som ikke behøver at vente på hovedbegivenhedsløkken. Se dokumentationen for klassen QWidget og KDE's biblioteksreferenceguide.</para>
<note><para>For brugere som allerede er avancerede: Knappen har ingen overliggende kontrol deklareret i konstruktoren. Derfor er den en topniveaukontrol og kører med en lokal begivenhedsløkke som ikke behøver at vente på hovedbegivenhedsløkken. Se dokumentationen for klassen TQWidget og KDE's biblioteksreferenceguide.</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Nu fortsætter vi med at give programmet "liv" ved at behandle brugerbegivenheder. I almindelighed har brugeren to måder at kommunikere med et program: musen og tastaturet. En grafisk brugergrænseflade skal sørge for metoder for begge måder, som detekterer handlinger og gør noget som reaktion på handlingerne. </para>
<para>Vinduesystemet sender derfor alle kommunikationsbegivenheder til det tilsvarende program. <classname>QApplication</classname> sender dem derefter til det aktive vindue som en <classname>QEvent</classname>, og kontrollerne selv skal bestemme hvad som skal udføres med dem. En kontrol tager imod begivenheden og behandler <methodname>QWidget::event(QEvent*)</methodname>, som afgør hvilken begivenhed der er sket og hvordan reaktionen skal være. Metoden <methodname>event()</methodname> udfører derfor håndteringen af hovedbegivenheden. Derefter sender metoden <methodname>event()</methodname> begivenheden til et såkaldt begivenhedfilter som afgør hvad der sker og hvad der skal udføres med begivenheden. Hvis intet filter signalerer at det er ansvarligt for begivenheden, kaldes speciel begivenhedshåndtering. På den måde kan vi skelne mellem: <itemizedlist>
<para>Vinduesystemet sender derfor alle kommunikationsbegivenheder til det tilsvarende program. <classname>QApplication</classname> sender dem derefter til det aktive vindue som en <classname>QEvent</classname>, og kontrollerne selv skal bestemme hvad som skal udføres med dem. En kontrol tager imod begivenheden og behandler <methodname>TQWidget::event(QEvent*)</methodname>, som afgør hvilken begivenhed der er sket og hvordan reaktionen skal være. Metoden <methodname>event()</methodname> udfører derfor håndteringen af hovedbegivenheden. Derefter sender metoden <methodname>event()</methodname> begivenheden til et såkaldt begivenhedfilter som afgør hvad der sker og hvad der skal udføres med begivenheden. Hvis intet filter signalerer at det er ansvarligt for begivenheden, kaldes speciel begivenhedshåndtering. På den måde kan vi skelne mellem: <itemizedlist>
<listitem><para>Tastaturbegivenheder: Tabulator og Shift+Tabulator:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Bemærk at alle begivenhedsfunktioner er virtuelle og protected. Derfor kan du implementere begivenhederne som du behøver i egne kontroller og angive hvordan din kontrol skal reagere. <classname>QWidget</classname> indeholder også nogle andre virtuelle metoder som kan være nyttige i dine programmer. Under alle omstændigheder er det nødvendigt at kende <classname>QWidget</classname> godt. </para>
<para>Bemærk at alle begivenhedsfunktioner er virtuelle og protected. Derfor kan du implementere begivenhederne som du behøver i egne kontroller og angive hvordan din kontrol skal reagere. <classname>TQWidget</classname> indeholder også nogle andre virtuelle metoder som kan være nyttige i dine programmer. Under alle omstændigheder er det nødvendigt at kende <classname>TQWidget</classname> godt. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Interaktion mellem objekt med signaler og slots</title>
<para>Nu kommer vi til den mest åbenbare fordel ved QT-værktøjskassen: signal/slot-mekanismen. Den tilbyder en meget bekvem og nyttig løsning for kommunikation mellem objekter, som sædvanligvis løses med tilbagekaldsfunktioner i X-windows værktøjskasser. Eftersom kommunikationen kræver strikt programmering og ind imellem gør det meget svært at oprette brugergrænseflader (som beskrevet i QT-dokumentationen og forklaret i Programming with Qt af K. Dalheimer), opfandt TrollTech et nyt system hvor objekter kan sende signaler som kan forbindes til metoder som deklareres som slots. Som programmør af C++, behøver man kun at vide nogen ting om denne mekanisme: <itemizedlist>
<listitem><para>klassedeklarationen af en klasse som bruger signaler og slots skal indeholde makroen TQ_OBJECT i begyndelsen (uden et semikolon), og skal afledes fra klassen <classname>QObject</classname> </para></listitem>
<listitem><para>klassedeklarationen af en klasse som bruger signaler og slots skal indeholde makroen TQ_OBJECT i begyndelsen (uden et semikolon), og skal afledes fra klassen <classname>TQObject</classname> </para></listitem>
<listitem><para>et signal kan sendes med nøgleordet emit, f.eks. emit signal(parametre);, inde i en hvilken som helst medlemsfunktion i en klasse som tillader brug af signaler og slots </para></listitem>
<listitem><para>alle signaler som bruges af klasser som ikke arves skal tilføjes i klassedeklarationen i en signalsektion </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>metaobjektoversætteren moc skal køres over deklarationsfilen for at ekspandere makroer og oprette implementeringen (som man ikke behøver kende til). Uddatafilerne fra moc kompileres også af C++ oversætteren. </para></listitem>
</itemizedlist>
</para>
<para>En anden måde at bruge signaler uden at aflede fra <classname>QObject</classname> er at bruge klassen <classname>QSignal</classname>. Se referencedokumentationen for mere information og eksempel på brug. Vi antager at du afleder fra <classname>QObject</classname> i det følgende. </para>
<para>En anden måde at bruge signaler uden at aflede fra <classname>TQObject</classname> er at bruge klassen <classname>QSignal</classname>. Se referencedokumentationen for mere information og eksempel på brug. Vi antager at du afleder fra <classname>TQObject</classname> i det følgende. </para>
<para>På denne måde kan din klasse sende signaler hvor som helst og sørge for slots som signaler kan forbindes til. Ved at bruge et signal, behøver du ikke bryde dig om hvem der modtager det. Du behøver kun at sende signalet, og hvilken slot du end forbinder den til kan reagere når den sendes. Desuden kan en slot bruges som en almindelig metode i implementeringen. </para>
<para>For nu at forbinde et signal til en slot, skal du bruge metoderne <methodname>connect()</methodname> som varetages af <classname>QObject</classname> eller, hvis tilgængelige, specielle metoder som objekter sørger for for at angive forbindelsen for et vist signal. </para>
<para>For nu at forbinde et signal til en slot, skal du bruge metoderne <methodname>connect()</methodname> som varetages af <classname>TQObject</classname> eller, hvis tilgængelige, specielle metoder som objekter sørger for for at angive forbindelsen for et vist signal. </para>
<sect3 id="c1s2s4s1">
<title>Eksempel på brug</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Du mærker at alt du skal tilføje for at give knappen mere kommunikation er metoden <methodname>connect()</methodname>: <methodname>connect (&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>;. Hvad er betydningen nu? Klassedeklarationen af QObject siger følgende om metoden <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const QObject * afsender, const char * signal, const QObject * modtager, const char * medlem ) </methodname></para>
<para>Dette betyder at du skal angive en <classname>QObject</classname>-instanspeger som er signalets afsender, hvilket betyder at den kan sende signalet, som første parameter. Derefter skal du angive signalet som du vil forbinde til. De to sidste parametre er modtagerobjektet som sørger for en slot, fulgt af medlemsfunktionen som er en virkelig slot som vil køres når signalet sendes. </para>
<para>Du mærker at alt du skal tilføje for at give knappen mere kommunikation er metoden <methodname>connect()</methodname>: <methodname>connect (&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>;. Hvad er betydningen nu? Klassedeklarationen af TQObject siger følgende om metoden <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const TQObject * afsender, const char * signal, const TQObject * modtager, const char * medlem ) </methodname></para>
<para>Dette betyder at du skal angive en <classname>TQObject</classname>-instanspeger som er signalets afsender, hvilket betyder at den kan sende signalet, som første parameter. Derefter skal du angive signalet som du vil forbinde til. De to sidste parametre er modtagerobjektet som sørger for en slot, fulgt af medlemsfunktionen som er en virkelig slot som vil køres når signalet sendes. </para>
<para>Ved at bruge signaler og slots, kan programmets objekter nemt kommunikere med hinanden uden udtrykkeligt at afhænge af typen af modtagarobjektet. Du vil lære mere om hvordan denne mekanisme bruges produktivt senere i håndbogen. Mere information om signal/slot-mekanismen findes også i <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE's biblioteksreferenceguide</ulink> og <ulink url="doc.trolltech.com">QT's reference på nettet</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Du ser at vi først har ændret fra <classname>QApplication</classname> til <classname>TDEApplication</classname>. Desuden var vi tvunget til at ændre den tidligere brugte metode <methodname>setMainWidget()</methodname> til <methodname>setTopWidget</methodname> som <classname>TDEApplication</classname> bruger til for at angive hovedkontrollen. Det er alt! Dit første KDE-program er klart. Du behøver kun at fortælle oversætteren hvilken deklarationssøgesti KDE har, og linkeren at den skal linke med tdecore-biblioteket med -ltdecore. </para>
<para>Eftersom du nu i det mindste ved hvad funktionen <function>main()</function> i almindelighed sørger for, og hvordan et program bliver synligt og tillader kommunikation mellem brugere og objekt, fortsætter vi med næste kapitel, hvor vort første program med &tdevelop; laves. Der kan du også prøve alt som tidligere blev nævnt, og se effekterne. </para>
<para>Hvad du yderligere bør have kigget på hidtil er QT-referencedokumentationen, især klasserne <classname>QApplication</classname>, <classname>QWidget</classname> og <classname>QObject</classname> og tdecore-biblioteksdokumentationen for klassen <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE's biblioteksreferenceguide</ulink> har også en fuldstændig beskrivelse af hvordan konstruktorerne i <classname>QApplication</classname> og <classname>TDEApplication</classname> kaldes, inklusive behandling af kommandolinjeflag. </para>
<para>Hvad du yderligere bør have kigget på hidtil er QT-referencedokumentationen, især klasserne <classname>QApplication</classname>, <classname>TQWidget</classname> og <classname>TQObject</classname> og tdecore-biblioteksdokumentationen for klassen <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE's biblioteksreferenceguide</ulink> har også en fuldstændig beskrivelse af hvordan konstruktorerne i <classname>QApplication</classname> og <classname>TDEApplication</classname> kaldes, inklusive behandling af kommandolinjeflag. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // tillad visningen at ændre statuslinjen og overskriften
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Det behøves ikke at siges at stabilitet er et af hovedmålene med konstruktionen. Ingen kan forhindre fejl, men et minimum kan i det mindste opnås med smarte konstruktionsmål og udbredt brug af objektorienterede konstruktioner. C++ gør det til en fornøjelse at programmere hvis du ved hvordan man udnytter dens muligheder - arv, at skjule information og genbrug af eksisterende kode. </para>
<para>Når et KDE- eller QT-projekt laves, skal du altid have en visning som arver en QWidget, enten med direkte arv eller fordi en bibliotekskontrol som du vil bruge arver QWidget. Derfor har Programguiden allerede oprettet en visning som er en instans af klassen programnavnView, som allerede arver QWidget. </para>
<para>Når et KDE- eller QT-projekt laves, skal du altid have en visning som arver en TQWidget, enten med direkte arv eller fordi en bibliotekskontrol som du vil bruge arver TQWidget. Derfor har Programguiden allerede oprettet en visning som er en instans af klassen programnavnView, som allerede arver TQWidget. </para>
<para>Dette kapitel beskriver derfor hvordan bibliotekskontroller bruges til at oprette visninger for KDE- og QT-programmer som laves med &tdevelop;. Derefter kigger vi på bibliotekerne og hvilke slags visninger de allerede tilbyder. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>Når du kigger på den første side af QT's net-dokumentation, finder du et link til "Widget Screenshots", hvor du kan kigge på hvordan de grafiske kontroller som QT indeholder ser ud. De er parate til at bruge, og kan kombineres til at give komplekse kontroller som kan oprette programvisninger eller dialoger. I det følgende beskriver vi nogle af disse, som er meget nyttigt til at oprette programvisninger, men husk at KDE-bibliotekerne sommetider indeholder andre kontroller med samme formål. Disse diskuteres i næste afsnit. </para>
<para>Her er nogle vink om hvilken Qt-komponent der kan bruges til hvilket slutmål: <orderedlist>
<listitem><para>Hvis visningsområdet ikke er stort nok til at vise alle data, skal brugeren kunne panorere i dokumentet med lister til venstre og længst nede i visningen. QT sørger for klassen <classname>QScrollView</classname> for dette, som tilbyder et underliggende område med panoreringsmulighed. Som tidligere forklaret, kan du lade dine egne grafiske kontroller arve <classname>QScrollView</classname>, eller bruge en instans for at håndtere dit dokuments visningskomponent. </para></listitem>
<listitem><para>For at oprette en egen ScrollView, lad komponenten View arve fra <classname>QWidget</classname> og tilføj lodrette og vandrette rullebjælker med <classname>QScrollBars</classname>. (Dette udføres af KDE's kontrol TDEHTMLView.) </para></listitem>
<listitem><para>For at oprette en egen ScrollView, lad komponenten View arve fra <classname>TQWidget</classname> og tilføj lodrette og vandrette rullebjælker med <classname>QScrollBars</classname>. (Dette udføres af KDE's kontrol TDEHTMLView.) </para></listitem>
<listitem><para>Til tekstbehandling, bruges <classname>QTextEdit</classname>. Denne klasse sørger for en fuldstændig grafisk teksteditorkontrol, som allerede kan klippe, kopiere og indsætte tekst og håndteres af en visning med rullebjælker. </para></listitem>
<listitem><para>Brug <classname>QTable</classname> til at vise data som er arrangeret i en tabel. Eftersom <classname>QTable</classname> også håndteres af rullebjælker, tilbyder den en god løsning for programmer med tabelberegninger. </para></listitem>
<listitem><para>For at vise to forskellige grafiske kontroller eller to instanser af samme kontrol samtidigt, bruges <classname>QSplitter</classname>. Den tillader at visninger lægges side ved side med vandrette eller lodrette opdelere. Kmail er et godt eksempel på hvordan det ser ud. Hovedvinduet er opdelt lodret af en opdeler, og det højre vindue er igen opdelt vandret. </para></listitem>
@ -653,7 +653,7 @@ return a.exec();
<title>Indstilling af genvejstaster</title>
<para>Noget meget professionelt som du altid bør tilføje i programmet er genvejstaster. De bruges oftest af erfarne brugere som vil arbejde hurtigt med deres programmer og er villige til at lære sig genveje. KDE-bibliotekerne tilbyder klassen <classname>TDEAction</classname> til dette, som sørger for genvejstaster og adgang til globalt indstillede standardgenveje. </para>
<para>Normalt bruger kun rammeprogrammer oprettet af &tdevelop; almindelige genvejstaster såsom F1 for at komme til nethjælp, Ctrl+N for Ny fil, osv. </para>
<para>Hvis programmet indeholder mange genvejstaster bør du gøre dem indstillelige via en indstillingsmenu. Enten kan det kombineres med anden programindstilling i en QWidget eller være alene. KDE-biblioteket sørger allerede for en <classname>KKeyChooser</classname> til at bruge i fanebladsdialoger, mens <classname>KKeyDialog</classname> sørger for en indstillingsdialog for genvejstaster som er parat til brug. </para>
<para>Hvis programmet indeholder mange genvejstaster bør du gøre dem indstillelige via en indstillingsmenu. Enten kan det kombineres med anden programindstilling i en TQWidget eller være alene. KDE-biblioteket sørger allerede for en <classname>KKeyChooser</classname> til at bruge i fanebladsdialoger, mens <classname>KKeyDialog</classname> sørger for en indstillingsdialog for genvejstaster som er parat til brug. </para>
</sect1>
</chapter>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>Knappen <guibutton>Hvad er dette?</guibutton></title>
<para>Knappen <guibutton>Hvad er dette...?</guibutton> sørger for hjælpevinduer med formålet at give brugeren hjælp med en vis kontrol i visningen som bruges eller et objekt i en værktøjslinje. Den er i værktøjslinjen og aktiveres når brugeren trykker på knappen. Markøren ændres til en pilemarkør med et spørgsmålstegn, præcis som knappen selv ser ud. Derefter kan brugeren klikke på en synlig kontrol og får så et hjælpevindue. Som en øvelse kan du prøve opførslen med knappen <guibutton>Hvad er dette...?</guibutton> inde i &tdevelop;. </para>
<para>For at tilføje "Hvad er dette...?" hjælp til en af dine grafiske kontroller, bruges den statiske metode <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;text)</methodname> </para>
<para>For at tilføje "Hvad er dette...?" hjælp til en af dine grafiske kontroller, bruges den statiske metode <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;text)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Hurtig konvertering mellem <classname>QImage</classname> og <classname>QPixmap</classname>. </para>
<para>Hurtig konvertering mellem <classname>TQImage</classname> og <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Qt's lavniveau tegnemodel er baseret på de muligheder som tilbydes af X11 og andre vinduessystemer hvor en version af Qt findes. Men den udvider dem også ved at implementere yderligere funktioner såsom vilkårlige affine transformationer for tekst og billeder. </para>
<para>Den centrale grafiske klasse til at tegne todimensionalt med Qt er <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Den kan tegne på en <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Der er tre mulige tegneenheder implementerede: En er <ulink url="kdeapi:qt/QWidget">QWidget</ulink>, som repræsenterer en grafisk kontrol på skærmen. Den anden er <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, som repræsenterer en printer, og producerer Postscript-udskrift. Den tredje er klassen <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, som indspiller tegnekommandoer og kan gemme dem til disk, og derefter afspille dem. Et muligt lagringsformat for tegnekommandoer er W3C-standarden SVG. </para>
<para>Den centrale grafiske klasse til at tegne todimensionalt med Qt er <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Den kan tegne på en <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Der er tre mulige tegneenheder implementerede: En er <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink>, som repræsenterer en grafisk kontrol på skærmen. Den anden er <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, som repræsenterer en printer, og producerer Postscript-udskrift. Den tredje er klassen <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, som indspiller tegnekommandoer og kan gemme dem til disk, og derefter afspille dem. Et muligt lagringsformat for tegnekommandoer er W3C-standarden SVG. </para>
<para>Altså er det muligt at genbruge visningskoden som du bruger til for at vise en grafisk kontrol for udskrift, med støtte for samme funktioner. Naturligvis bruges koden i praksis i en noget anderledes sammenhæng. Tegning på en grafisk kontrol gøres næsten kun i metoden paintEvent() i en kontrolklasse. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle): dette laver en sort pensel, med et af de fordefinerede mønstre som vises nedenfor.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle): dette laver en farvet pensel, med et af de fordefinerede mønstre som vises nedenfor.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle): dette laver en farvet pensel, med et af de fordefinerede mønstre som vises nedenfor.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap): dette laver en farvet pensel, med det egne mønster som angives som anden parameter.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap): dette laver en farvet pensel, med det egne mønster som angives som anden parameter.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Farve</title>
<para>Farver har betydning både når kurvor tegnes, og når former udfyldes. Farver repræsenteres af klassen <ulink url="kdeapi:qt/QColor">QColor</ulink> i Qt. Qt understøtter ikke avancerede grafikfunktioner såsom ICC-farveprofiler og farvekorrektion. Farver laves oftest ved at angive deres røde, grønne og blå komponenter, eftersom RGB-modellen er måden som billedpunkter sammensættes en billedskærm. </para>
<para>Farver har betydning både når kurvor tegnes, og når former udfyldes. Farver repræsenteres af klassen <ulink url="kdeapi:qt/TQColor">TQColor</ulink> i Qt. Qt understøtter ikke avancerede grafikfunktioner såsom ICC-farveprofiler og farvekorrektion. Farver laves oftest ved at angive deres røde, grønne og blå komponenter, eftersom RGB-modellen er måden som billedpunkter sammensættes en billedskærm. </para>
<para>Det er også muligt at bruge farvetone, mætning og værdi. Denne HSV-repræsentation er den som bruges i GTK's farvedialog, f.eks. i GIMP. Der svarer farvetonen til en vinkel i farvehjulet, mens farvemætningen svarer til afstanden fra cirklens midte. Værdien vælges med en separat glider. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> svarer direkte til pixmapsobjekter i X11. En pixmap er et objekt på serversiden og kan, med et moderne grafikkort, til og med opbevares direkte i kortets hukommelse. Det gør det <emphasis>meget</emphasis> effektivt at overføre en pixmap til skærmen. En pixmap virker også som en svarende til grafiske kontroller udenfor skærmen. QPixmap-klassen er en delklasse til QPaintDevice, så det er muligt at tegne på den med en QPainter. Elementære tegneoperationer accelereres ofte af moderne grafik. Derfor er et almindeligt brugsmønster at bruge en pixmap til dobbeltbuffering. Dette betyder at i stedet for at tegne direkte på en grafisk kontrol, tegner man på et tilfældigt pixmapobjekt og bruger funktionen <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> til at overføre det til kontrollen. For komplekse gentegninger, hjælper dette med at undgå flimmer. </para>
<para>I modsætning til dette, er der <ulink url="kdeapi:qt/QImage">QImage</ulink>-objekter på klientsiden. Deres hovedopgave er at give direkte adgang til billedpunkterne i billederne. Det gør dem nyttige til billedhåndtering, og ting såsom at indlæse og gemme til disk (Metoden load() for QPixmap bruger QImage som et mellemtrin). På den anden siden, så bliver optegning af et billede på en grafisk kontrol en ganske krævende handling, eftersom det indebærer en overførsel til X-serveren, hvilket kan tage en vis tid, især for store billeder og fjernservere. Afhængig af farvedybden, kan konvertering fra QImage til QPixmap også kræve brug af dithering. </para>
<para>I modsætning til dette, er der <ulink url="kdeapi:qt/TQImage">TQImage</ulink>-objekter på klientsiden. Deres hovedopgave er at give direkte adgang til billedpunkterne i billederne. Det gør dem nyttige til billedhåndtering, og ting såsom at indlæse og gemme til disk (Metoden load() for QPixmap bruger TQImage som et mellemtrin). På den anden siden, så bliver optegning af et billede på en grafisk kontrol en ganske krævende handling, eftersom det indebærer en overførsel til X-serveren, hvilket kan tage en vis tid, især for store billeder og fjernservere. Afhængig af farvedybden, kan konvertering fra TQImage til QPixmap også kræve brug af dithering. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Tegn tekst</title>
<para>Tekst kan tegnes med en af de overbelastede varianter af metoden QPainter::drawText(). Disse tegner en QString, enten ved et given punkt eller inde i en given rektangel, med skrifttypen som indstilles med QPainter::setFont(). Der er også en parameter som tager en ELLER-kombination af visse flag fra nummereringstyperne <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> og <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink>. </para>
<para>Tekst kan tegnes med en af de overbelastede varianter af metoden QPainter::drawText(). Disse tegner en TQString, enten ved et given punkt eller inde i en given rektangel, med skrifttypen som indstilles med QPainter::setFont(). Der er også en parameter som tager en ELLER-kombination af visse flag fra nummereringstyperne <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> og <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink>. </para>
<para>Begyndende i version 3.0, håndterer Qt fuldstændig tekstlayout også for sprog som skrives fra højre til venstre. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Foruden de sædvanlige indgange, demonstrerer dette eksempel hvordan man angiver at en tjeneste har visse egenskaber. Hver definition af en egenskab svarer til en gruppe <literal>[PropertyDef::name]</literal> i konfigurationsfilen. I gruppen, angiver indgangen <literal>Type</literal> egenskabens type. Mulige typer er alt som kan opbevares i en <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Med objektet <classname>KService</classname> tilgængeligt, kan du meget let indlæse biblioteket og få en peger til dets tilvirkningsobjekt. </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Start af TDEIO-server mislykkedes med meddelelsen " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>I eksemplet som gives her, startes tjenesten "med navn", dvs. første argument til <function>TDEApplication::startServiceByName() </function> er navnet, som det angives på linjen <literal>Name</literal> i desktop-filen. Et alternativ er at bruge <function>TDEApplication::startServiceByDesktopName()</function>, som bruger navnet på desktop-filen som argument, dvs. i dette tilfælde <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Alle disse kald har en liste med URL'er som andet argument, som gives til tjenesten på kommandolinjen. Det tredje argument er en peger til en <classname>QString</classname>. Hvis starten af tjenesten mislykkes, tildeles dette argument til en oversat fejlmeddelelse. </para>
<para>Alle disse kald har en liste med URL'er som andet argument, som gives til tjenesten på kommandolinjen. Det tredje argument er en peger til en <classname>TQString</classname>. Hvis starten af tjenesten mislykkes, tildeles dette argument til en oversat fejlmeddelelse. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Naturligvis kan selv KMimeMagic kun afgøre filtypen ud fra indholdet i en lokal fil. For fjernfiler, er der yderligere en mulighed: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Kunne ikke afgøre typen" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Hent en ikon for en URL. Dette kigger efter URL'ens type, og returnerer en tilsvarende ikon. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Kør en URL. Dette kigger efter URL'ens type, og starter et tilhørende program til typen som brugeren foretrækker. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Omdøber en fil. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Opretter et symbolsk link. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// indlæse filen med navnet tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Seneste ændring: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Opretter et symbolsk link.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText minKontrol <quote>ny tekst</quote> </para>
<para>Dette antager at du er inde i en &kommander;-fil og har adgang til specialen @pid, som indeholder procesID'et. Faktisk er de lettere at erstatte <quote>kmdr-executor-@pid</quote> med @dcopid. Du kan dog bruge denne syntaks (naturligvis uden specialerne), fra kommandolinjen eller et hvilket som helst eksternt script, for at ændre &kommander;-vinduet. </para>
<para>Fordi &kommander; ikke har en fuldstændig fortolker i sit alfastadium, hvis du vil bruge den meget hurtigere interne &DCOP; fra et andet applikationsvindue (konsol &DCOP; er meget langsomt) er det meget mere kompliceret fordi du skal give meget information, inklusive en prototype af kaldet. Det ovenstående kald ville blive til: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>Da dette blev skrevet skulle man være klar over at indlejre &DCOP;-kald inde i scriptsprogstrukturer (som <application>bash</application> betyder at man skal bruge konsolmetodekald. <emphasis>Hvis du bruger interne &DCOP;-kld , vil alle &kommander;-specialer blive udført først og dernæst scriptet.</emphasis> </para>
<para>Der er en ny og simpel måde at bruge &DCOP; på, i &kommander; ved at bruge en objektsyntaks. Lad os sige at du vil ændre teksten i en kontrols navn @linjeEditor1. Det ville se således ud: </para>
<para>@LineEdit1.changeWidgetText(New text) </para>
@ -29,15 +29,15 @@
<title>&DCOP; til globale variable</title>
<variablelist>
<varlistentry>
<term>global(QString variableName)</term>
<term>global(TQString variableName)</term>
<listitem>
<para>Returnerer værdien af den specficerede globale variabel. Når et script køres inde fra &kommander;-vinduet, vil alle (non-globale) variabler sat i dette script, holde op med at eksistere efter scriptet er kørt færdigt og vil derfor ikke være til rådighed for andre scriptprocesser eller i en ny instans af den kaldende proces. Det globale <quote>virkefelt</quote> betyder at variablen eksisterer for alle processer i vinduet indtil dette vindue lukkes. Du kan ændre disse variabler på et hvilket som helst tidspunk, med et nyt kald til <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString variableName, QString value)</term>
<term>setGlobal(TQString variableName, TQString value)</term>
<listitem>
<para>Opretter en variabel som er global for vinduesprocessen og tildeler værdien til den. Denne værdi kan hentes med global(QString variabelNavn) eller tildeles en ny værdi. </para>
<para>Opretter en variabel som er global for vinduesprocessen og tildeler værdien til den. Denne værdi kan hentes med global(TQString variabelNavn) eller tildeles en ny værdi. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString text)</term>
<term>changeWidgetText(TQString text)</term>
<listitem>
<para>Dette skal omdøbes til setWidgetText og dette navn bliver sikker overflødiggjort. Det fjerner teksten der vises i kontrollen og erstatter det med den givne tekst. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString text)</term>
<term>setAssociatedText(TQString text)</term>
<listitem>
<para>Den sætter &kommander;s standard Text-streng. Den sættes typisk til <quote>@widgeText</quote> for at vise hvad der indtastes i kontrollen. Det er usandsynligt at du får behov for det, men hvis du gør er det her det foregår. Dette gælder for alle kontroller der kan indeholde data. </para>
</listitem>
@ -78,7 +78,7 @@
<title>&DCOP; til listeboks- og kombinationsfelt-kontroller</title>
<variablelist>
<varlistentry>
<term>addListItem(QString item, int index)</term>
<term>addListItem(TQString item, int index)</term>
<listitem>
<para>Tilføjer et element til en listebokskontrol ved det specificerede indeks. Listeindekset starter ved nul For at tilføje til slutinngen af en liste, bruges -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString item)</term>
<term>addUniqueItem(TQString item)</term>
<listitem>
<para>addUniqueItem tilføjer et element til slutningen af listen, men kun hvis det er unikt. </para>
</listitem>
@ -126,7 +126,7 @@
<title>&DCOP; for afkrydsningsfelt- og radioknapkontroller</title>
<variablelist>
<varlistentry>
<term>setChecked(QString widgetName, bool checked)</term>
<term>setChecked(TQString widgetName, bool checked)</term>
<listitem>
<para>Afkrydser eller fjerner afkrysdning i afkrydsningsfelt- og radioknapkontroller. </para>
</listitem>
@ -138,7 +138,7 @@
<title>&DCOP; for fanebladskontroller</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString widgetName, int index)</term>
<term>setCurrentTab(TQString widgetName, int index)</term>
<listitem>
<para>Markér fanebladet ved indeks for fanebladskontroller. Indeks starter ved nul. </para>
</listitem>

@ -47,8 +47,8 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"Dette er denne farve repræsenteret i hexadecimal rgb som det kan bruges i "
"HTML eller som et TQColor-navn. Rektanglernes baggrund viser farven på "
"pixlen inden i den lille firkant for enden af linjemarkøren."
"HTML eller som et TQColor-navn. Rektanglernes baggrund viser farven på pixlen "
"inden i den lille firkant for enden af linjemarkøren."
#: klineal.cpp:147
msgid "KRuler"

@ -4043,5 +4043,5 @@ msgstr ""
#~ msgid "UMLRolePropertiesBase"
#~ msgstr "UMLRolePropertiesBase"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -5744,8 +5744,8 @@ msgid ""
"<p><b>TQWidget::%1</b></p><p>There is no documentation available for this "
"property.</p>"
msgstr ""
"<p><b>TQWidget::%1</b></p><p>Der er ingen dokumentation tilgængelig for "
"denne egenskab.</p>"
"<p><b>TQWidget::%1</b></p><p>Der er ingen dokumentation tilgængelig for denne "
"egenskab.</p>"
#: kdevdesigner/designer/propertyeditor.cpp:4027
msgid "New Signal Handler"
@ -29145,19 +29145,19 @@ msgstr "Pålideligt SSL-certifikat"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Fejl ved kompilering af regulært udtryk."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4-stil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4-stil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Opgiv hvilken basisklasse den nye klasse skal arve fra. Hvis du har "
#~ "afkrydset 'generér afledt klasse af QWidget', vil den nye klasse arve fra "
#~ "QWidget. Hvis du ikke opgiver nogen basisklasse, vil den nye klasse ikke "
#~ "afkrydset 'generér afledt klasse af TQWidget', vil den nye klasse arve fra "
#~ "TQWidget. Hvis du ikke opgiver nogen basisklasse, vil den nye klasse ikke "
#~ "have nogen forældreklasse. Du kan også bruge skabelonklasser her (såsom "
#~ "BasisKlasse<int, int>)"

@ -1590,8 +1590,8 @@ msgid ""
"<p><b>TQWidget::%1</b></p><p>There is no documentation available for this "
"property.</p>"
msgstr ""
"<p><b>TQWidget::%1</b></p><p>Der er ingen dokumentation tilgængelig for "
"denne egenskab.</p>"
"<p><b>TQWidget::%1</b></p><p>Der er ingen dokumentation tilgængelig for denne "
"egenskab.</p>"
#: editor/propertyeditor.cpp:3391
msgid "New Signal Handler"

@ -460,7 +460,7 @@
<term><userinput>(?!PATTERN)</userinput> (Negative Vorwärtsreferenz)</term>
<listitem><para>Eine negative Vorwärtsreferenz verhindert, dass der Text zutrifft, wenn der nachfolgende Text auf das <emphasis>MUSTER</emphasis> zutrifft.</para>
<para>Der Ausdruck <userinput>const \w+\b(?!\s*&amp;)</userinput> trifft auf <quote>const char</quote> im Text <quote>const char* foo</quote>, aber nicht <quote>const QString</quote> in <quote>const QString&amp; bar</quote> weil das <quote>&amp;</quote> auf die negative Vorwärtsreferenz zutrifft.</para>
<para>Der Ausdruck <userinput>const \w+\b(?!\s*&amp;)</userinput> trifft auf <quote>const char</quote> im Text <quote>const char* foo</quote>, aber nicht <quote>const TQString</quote> in <quote>const TQString&amp; bar</quote> weil das <quote>&amp;</quote> auf die negative Vorwärtsreferenz zutrifft.</para>
</listitem>
</varlistentry>

@ -1719,11 +1719,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1740,15 +1740,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = KDE wird gestartet
<para>Bevor Ihr Programm seine eigentliche Arbeit beginnt oder bevor &zb; Module und Erweiterungen geladen werden, starten Sie &ksplash;:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Immer wenn Sie eine Meldung mit oder ohne Symbol anzeigen möchten, verwenden Sie </para>
<programlisting>arg &lt;&lt; QString("symbolName") &lt;&lt; QString("programmName") &lt;&lt;
QString("Eine Beschreibung");
<programlisting>arg &lt;&lt; TQString("symbolName") &lt;&lt; TQString("programmName") &lt;&lt;
TQString("Eine Beschreibung");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Modul-Klassen müssen eine <literal>static</literal>-Funktion namens <function>names</function> enthalten, die eine Liste der Namen zurückgibt, mit denen sie aufgerufen werden kann.</para></listitem>
<listitem><para>Falls das Modul im Kontrollzentrum eingerichtet werden kann, muss es eine von <literal>ThemeEngineConfig</literal> abgeleitete Klasse zur Einrichtung enthalten.</para></listitem>
<listitem><para>Modul-Klassen müssen mindestens eine der virtuellen Funktionen <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> und <function>slotUpdatSteps</function> überschreiben.</para></listitem>
<listitem><para>Der Konstruktor sollte die Form <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args)</literal> haben, damit es mit <classname>KGenericFactory</classname> genutzt werden kann.</para></listitem>
<listitem><para>Der Konstruktor sollte die Form <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args)</literal> haben, damit es mit <classname>KGenericFactory</classname> genutzt werden kann.</para></listitem>
</orderedlist>
<para>Die letzte Anforderung scheint kompliziert zu sein, aber Sie werden später feststellen, dass dies durch nur eine einzige Zeile im Quelltext erledigt werden kann.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Nun gut, gehen wir die obige Auflistung durch: Die Klasse <classname>Theme2k</classname> ist von <classname>ThemeEngine</classname> abgeleitet und erfüllt die Namenskonvention. Sie enthält die Funktion <methodname>Theme2k::names()</methodname> und hat einen Konstruktor mit den benötigten Parametern: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> und enthält eine einfache Methode <methodname>Theme2k::slotSetText()</methodname>. Kümmern Sie sich erstmal nicht um die Klasse <classname>RotWidget</classname>; sie erzeugt nur ein hübsches Bildschirmelement. Unser Modul ist sehr einfach gehalten und zeigt keine Symbole oder eine Fortschrittsanzeige an. Wenn Sie das möchten, überschreiben Sie die Funktion <function>slotSetPixmap</function>. Ähnliche Funktionen gibt es auch für die Schritte der Fortschrittsanzeige (<function>slotUpdateSteps</function>) und zum Inkrementieren (<function>slotUpdateProgress</function>) des aktuellen Schrittes. </para>
<para>Nun gut, gehen wir die obige Auflistung durch: Die Klasse <classname>Theme2k</classname> ist von <classname>ThemeEngine</classname> abgeleitet und erfüllt die Namenskonvention. Sie enthält die Funktion <methodname>Theme2k::names()</methodname> und hat einen Konstruktor mit den benötigten Parametern: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> und enthält eine einfache Methode <methodname>Theme2k::slotSetText()</methodname>. Kümmern Sie sich erstmal nicht um die Klasse <classname>RotWidget</classname>; sie erzeugt nur ein hübsches Bildschirmelement. Unser Modul ist sehr einfach gehalten und zeigt keine Symbole oder eine Fortschrittsanzeige an. Wenn Sie das möchten, überschreiben Sie die Funktion <function>slotSetPixmap</function>. Ähnliche Funktionen gibt es auch für die Schritte der Fortschrittsanzeige (<function>slotUpdateSteps</function>) und zum Inkrementieren (<function>slotUpdateProgress</function>) des aktuellen Schrittes. </para>
</sect1>
<sect1 id="Implementation">
<title>Die Implementierung des Moduls</title>
@ -686,7 +686,7 @@ private:
<para>Das Makro <constant>K_EXPORT_COMPONENT_FACTORY</constant> ist in <filename>kgenericfactory.h</filename> deklariert. Gut, nun weiter zum Konstruktor! Weil es sich hier um ein sehr einfaches Modul handelt, ist der Konstruktor ebenso einfach.</para>
<example>
<title>Der Konstruktor des Moduls</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP-Funktionen</title>
<para>Die &kstars; <abbrev>DCOP</abbrev>-Schnittstelle enthält folgende Funktionen: <itemizedlist>
<listitem><para><function> lookTowards( const QString richtung )</function>: Richtet die Anzeigenmitte auf die Richtung aus, die durch das Argument angegeben wird. Das kann der Name jedes Objektes im Himmel sein oder einer der folgenden direktionalen Begriffe oder Abkürzungen: "zenith" (Zenit) (oder "z"), "north" (Nord) (oder "n"), "northeast" (Nordost) (oder "ne"), "east" (Osten) (oder ("e"), "southeast" (Südosten) (oder "se"), "south" (Süden) (oder "s"), "southwest" (Südwest) (oder "sw"), "west" (Westen) (oder "w") oder "northwest" (Nordwest) (oder "nw"). </para></listitem>
<listitem><para><function> lookTowards( const TQString richtung )</function>: Richtet die Anzeigenmitte auf die Richtung aus, die durch das Argument angegeben wird. Das kann der Name jedes Objektes im Himmel sein oder einer der folgenden direktionalen Begriffe oder Abkürzungen: "zenith" (Zenit) (oder "z"), "north" (Nord) (oder "n"), "northeast" (Nordost) (oder "ne"), "east" (Osten) (oder ("e"), "southeast" (Südosten) (oder "se"), "south" (Süden) (oder "s"), "southwest" (Südwest) (oder "sw"), "west" (Westen) (oder "w") oder "northwest" (Nordwest) (oder "nw"). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Fokussiert die Anzeige auf die angegebenen äquatorialen Koordinaten. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Pausiert für t Sekunden bevor mit den weiteren Skriptbefehlen fortgefahren wird. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Hält die Skriptausführung solange an, bis der Benutzer die angegebene Taste drückt. An diesem Punkt können Sie keine Tastenkombinationen angeben (wie etwa <keycombo action="simul">&Strg;<keycap>C</keycap></keycombo>). Nur einfache Tasten sind erlaubt. Sie können <quote>space</quote> (engl. für Leertaste) eingeben, um die Leertaste zu bezeichnen. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Hält die Skriptausführung solange an, bis der Benutzer die angegebene Taste drückt. An diesem Punkt können Sie keine Tastenkombinationen angeben (wie etwa <keycombo action="simul">&Strg;<keycap>C</keycap></keycombo>). Nur einfache Tasten sind erlaubt. Sie können <quote>space</quote> (engl. für Leertaste) eingeben, um die Leertaste zu bezeichnen. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Kontrolliert, ob die Verfolgungsfunktion eingeschaltet ist. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Passt eine Anzeigeeinstellung an. Es gibt Dutzende dieser Einstellungen, praktisch alles, was Sie im Fenster <guilabel>&kstars; einrichten</guilabel> verändern können. Das erste Argument ist der Name der Einstellung (Die Namen sind aus der Einstellungsdatei <filename>kstarsrc</filename> entnommen) und das zweite Argument ist der gewünschte Wert. Der Argumentleser ist sehr robust, also wenn Sie falsche Daten angeben, sollte er sich achtbar aus der Affäre ziehen. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Passt eine Anzeigeeinstellung an. Es gibt Dutzende dieser Einstellungen, praktisch alles, was Sie im Fenster <guilabel>&kstars; einrichten</guilabel> verändern können. Das erste Argument ist der Name der Einstellung (Die Namen sind aus der Einstellungsdatei <filename>kstarsrc</filename> entnommen) und das zweite Argument ist der gewünschte Wert. Der Argumentleser ist sehr robust, also wenn Sie falsche Daten angeben, sollte er sich achtbar aus der Affäre ziehen. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Ändert den Beobachtungsort in die angegebene Stadt. Wenn keine Stadt mit dem Namen des Arguments gefunden wird, passiert nichts. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Ändert den Beobachtungsort in die angegebene Stadt. Wenn keine Stadt mit dem Namen des Arguments gefunden wird, passiert nichts. </para></listitem>
<listitem><para><function> stop()</function> [Uhr]: Hält die Simulationsuhr an. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Allgemeine Grätefunktionen: Funktionen, um Geräte zu verbinden und zu trennen &etc;.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function> : Richtet einen INDI-Dienst entweder lokal oder als Server ein.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function> : Beendet den INDI-Dienst.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function> : Verbindet zu einem INDI-Gerät oder entfernt diese Verbindung.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function>: Stellt den Verbindungsport des Geräts ein.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function> : Startet eine INDI Aktion. Die Aktion kann jedes beliebige <emphasis>Element</emphasis> einer <emphasis>Schaltereigenschaft</emphasis> sein.</para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function> : Hält die Ausführung des Skripts an, bis die angegebene Aktion <emphasis>Eigenschaft</emphasis> mit erfolgreich beendet ist. </para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function> : Richtet einen INDI-Dienst entweder lokal oder als Server ein.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function> : Beendet den INDI-Dienst.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function> : Verbindet zu einem INDI-Gerät oder entfernt diese Verbindung.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function>: Stellt den Verbindungsport des Geräts ein.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function> : Startet eine INDI Aktion. Die Aktion kann jedes beliebige <emphasis>Element</emphasis> einer <emphasis>Schaltereigenschaft</emphasis> sein.</para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function> : Hält die Ausführung des Skripts an, bis die angegebene Aktion <emphasis>Eigenschaft</emphasis> mit erfolgreich beendet ist. </para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Teleskop Funktionen: Funktionen, um die Bewegung und den Zustand von Teleskopen zu kontrollieren.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function> : Stellt den Modus oder eine Aktion für das Teleskop. Mögliche Optionen sind SLEW, TRACK, SYNC, PARK, und ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function> : Stellt die Zielkoordinaten des Teleskops auf <emphasis>RA</emphasis> und <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function> : Stellt die Zielkoordinaten des Teleskops auf die Koordinaten von <emphasis>objectName</emphasis>. KStars sucht den Namen des Objekts in der Datenbank und gibt Rekt und Dekl zurück, wenn das Objekt gefunden wurde.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function> : Stellt den Standort des Teleskops auf den angegebenen Längen- und Breitengrad. Der Längengrad wird von Greenwich in Großbritannien in östlicher Richtung gemessen. Während es jedoch üblich ist, negative Längengrade für die westliche Halbkugel zu verwenden, müssen die Längengrade für INDI zwischen 0 und 360 Grad eingegeben werden. Bei negativen Längengraden addieren Sie 360 Grad hinzu, um dien Eingabewert für INDI anzupassen. Zum Beispiel Calgary in Kanada hat in KStars die Koordinaten Längengrad : -114 04 58; Breitengrad : 51 02 58. Für INDI geben Sie als Längengrad 360 - 114.083 = 245,917 Grad an.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function> : Stellt das Teleskop auf UTC - Datum und Zeit im Format ISO 8601. Das Format ist YYYY-MM-DDTHH:MM:SS (z. B.. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function> : Stellt den Modus oder eine Aktion für das Teleskop. Mögliche Optionen sind SLEW, TRACK, SYNC, PARK, und ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function> : Stellt die Zielkoordinaten des Teleskops auf <emphasis>RA</emphasis> und <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString deviceName, TQString objectName)</function> : Stellt die Zielkoordinaten des Teleskops auf die Koordinaten von <emphasis>objectName</emphasis>. KStars sucht den Namen des Objekts in der Datenbank und gibt Rekt und Dekl zurück, wenn das Objekt gefunden wurde.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function> : Stellt den Standort des Teleskops auf den angegebenen Längen- und Breitengrad. Der Längengrad wird von Greenwich in Großbritannien in östlicher Richtung gemessen. Während es jedoch üblich ist, negative Längengrade für die westliche Halbkugel zu verwenden, müssen die Längengrade für INDI zwischen 0 und 360 Grad eingegeben werden. Bei negativen Längengraden addieren Sie 360 Grad hinzu, um dien Eingabewert für INDI anzupassen. Zum Beispiel Calgary in Kanada hat in KStars die Koordinaten Längengrad : -114 04 58; Breitengrad : 51 02 58. Für INDI geben Sie als Längengrad 360 - 114.083 = 245,917 Grad an.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function> : Stellt das Teleskop auf UTC - Datum und Zeit im Format ISO 8601. Das Format ist YYYY-MM-DDTHH:MM:SS (z. B.. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Kamera/CCD Funktionen: Funktionen zur Kontrolle der Eigenschaften von Kamera/CCD und deren Zustand.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function> : Stellt die CCD-Chip Zieltemperatur in Grad Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function> : Stellt den CCD-Rahmentyp. Mögliche Optionen sind FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, und FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function> : Startet die Belichtung von CCD/Camera mit der durch <emphasis>timeout</emphasis> in Sekunden angegebenen Zeitdauer.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function> : Stellt die CCD-Chip Zieltemperatur in Grad Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString deviceName, TQString type)</function> : Stellt den CCD-Rahmentyp. Mögliche Optionen sind FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, und FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function> : Startet die Belichtung von CCD/Camera mit der durch <emphasis>timeout</emphasis> in Sekunden angegebenen Zeitdauer.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Focussierer Funktionen: Funktionen, um die Bewegung und den Zustand von Focussierern zu kontrollieren.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function> : Stellt die Geschwindigkeit des Focussierers. Mögliche Optionen sind FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, und FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function> : Stellt die Dauer in Sekunden für alle nachfolgenden startINDIFocus-Operationen.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function> : Bewegt den Focussierer entweder einwärts (focusDir = 0) oder auswärts (focusDir = 1). Die Geschwindigkeit und Dauer dieser Operation wird mit den Funktionen <function>setINDIFocusSpeed()</function> und <function>setINDIFocusTimeout()</function> eingestellt.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function> : Stellt die Geschwindigkeit des Focussierers. Mögliche Optionen sind FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, und FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function> : Stellt die Dauer in Sekunden für alle nachfolgenden startINDIFocus-Operationen.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function> : Bewegt den Focussierer entweder einwärts (focusDir = 0) oder auswärts (focusDir = 1). Die Geschwindigkeit und Dauer dieser Operation wird mit den Funktionen <function>setINDIFocusSpeed()</function> und <function>setINDIFocusTimeout()</function> eingestellt.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Filter-Funktionen: Funktionen, um die Position von Filtern einzustellen.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function> : Ändert die Filterposition auf <varname>filter_num</varname>. Symbolische Namen (Alias) für Filternummern können Sie im Dialog <guimenuitem>INDI einrichten</guimenuitem> aus dem Menü <guimenu>Geräte</guimenu> (z. B. Filter 1 = Rot, Filter 2 = Grün &etc;).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function> : Ändert die Filterposition auf <varname>filter_num</varname>. Symbolische Namen (Alias) für Filternummern können Sie im Dialog <guimenuitem>INDI einrichten</guimenuitem> aus dem Menü <guimenu>Geräte</guimenu> (z. B. Filter 1 = Rot, Filter 2 = Grün &etc;).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Eine Liste der vorhandenen &DCOP;-Schnittstellen erhalten Sie, wenn Sie das richtige Argument wie im folgenden Beispiel verwenden. <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -562,7 +562,7 @@ public:
Arts::Synth_PLAY p;
string s = p.toString();
</programlisting> <para> is something different than dereferencing a NULL pointer. You didn't tell the object at all what it is, and now you try to use it. The guess here is that you want to have a new local instance of a Arts::Synth_PLAY object. Of course you might have wanted something else (like creating the object somewhere else, or using an existing remote object). However, it is a convenient short cut to creating objects. Lazy creation will not work once you assigned something else (like a null reference). </para> <para> The equivalent C++ terms would be <programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> which obviously in C++ just plain segfaults. So this is different here. This lazy creation is tricky especially as not necessarily an implementation exists for your interface. </para> <para> For instance, consider an abstract thing like a Arts::PlayObject. There are certainly concrete PlayObjects like those for playing mp3s or wavs, but <programlisting>
Arts::PlayObject po;

@ -866,7 +866,7 @@ struct TypeDef {
<para> There is no need to base a middleware for multimedia on &Qt;. Deciding so, and using all that nice &Qt;-streaming and stuff, will easily lead to the middleware becoming a &Qt;-only (or rather &kde;-only) thing. I mean: as soon as I'll see the GNOMEs using &DCOP;, too, or something like that, I am certainly proven wrong. </para>
<para> While I do know that &DCOP; basically doesn't know about the data types it sends, so that you could use &DCOP; without using &Qt;, look at how it is used in daily &kde; usage: people send types like <classname>QString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ..., around. These use &Qt;-serialization. So if somebody choose to support &DCOP; in a GNOME program, he would either have to claim to use <classname>QString</classname>,... types (although he doesn't do so), and emulate the way &Qt; does the streaming, or he would send other string, pixmap and rect types around, and thus not be interoperable. </para>
<para> While I do know that &DCOP; basically doesn't know about the data types it sends, so that you could use &DCOP; without using &Qt;, look at how it is used in daily &kde; usage: people send types like <classname>TQString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ..., around. These use &Qt;-serialization. So if somebody choose to support &DCOP; in a GNOME program, he would either have to claim to use <classname>TQString</classname>,... types (although he doesn't do so), and emulate the way &Qt; does the streaming, or he would send other string, pixmap and rect types around, and thus not be interoperable. </para>
<para> Well, whatever. &arts; was always intended to work with or without &kde;, with or without &Qt;, with or without X11, and maybe even with or without &Linux; (and I have even no problems with people who port it to a popular non-free operating systems). </para>

@ -1711,8 +1711,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Verwerfen einer bereits festgelegten Erinnerung</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1754,8 +1754,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Auslösen eines bereits festgelegten Alarmes</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1799,8 +1799,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Auslösen oder Löschen einer Erinnerung.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1850,43 +1850,43 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Eine neue Erinnerung festlegen.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>, int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -1923,7 +1923,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Legt die Hintergrundfarbe für die Anzeige der Nachricht fest. Die Zeichenfolge kann im Format <quote>#RRGGBB</quote> (wie von <methodname>QColor::name()</methodname> zurückgegeben) übergeben werden. Alternativ kann die Zeichenfolge in jedem Format übergeben werden, das von <methodname>QColor::setNamedColor()</methodname> akzeptiert wird. Beispielsweise als Name aus der Farbdatenbank von X (&eg; <quote>red</quote> oder <quote>steelblue</quote>). Wird der Wert null als Zeichenfolge übergeben, wird die derzeit gültige Standard-Hintergrundfarbe verwendet.</para>
<para>Legt die Hintergrundfarbe für die Anzeige der Nachricht fest. Die Zeichenfolge kann im Format <quote>#RRGGBB</quote> (wie von <methodname>TQColor::name()</methodname> zurückgegeben) übergeben werden. Alternativ kann die Zeichenfolge in jedem Format übergeben werden, das von <methodname>TQColor::setNamedColor()</methodname> akzeptiert wird. Beispielsweise als Name aus der Farbdatenbank von X (&eg; <quote>red</quote> oder <quote>steelblue</quote>). Wird der Wert null als Zeichenfolge übergeben, wird die derzeit gültige Standard-Hintergrundfarbe verwendet.</para>
</listitem>
</varlistentry>
@ -2025,21 +2025,21 @@ continuously in the background and alarms are always enabled.</para>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -2047,15 +2047,15 @@ continuously in the background and alarms are always enabled.</para>
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2092,7 +2092,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Gibt die Hintergrundfarbe für die Anzeige der Datei an. Die Zeichenfolge kann im Format <quote>#RRGGBB</quote> (as returned by <methodname>QColor::name()</methodname>) erfolgen, wobei RR, GG und BB zweistellige Hexadezimalwerte für Rot, Grün und Blau sind. Alternativ kann die Zeichenfolge in allen Formaten angegeben werden, die von <methodname>QColor::setNamedColor()</methodname> akzeptiert wird. Beispielsweise als Name aus der Farbdatenban von X (&eg; <quote>red</quote> or <quote>steelblue</quote>). Wird als Zeichenfolge der Wert null übergeben, wird die Datei mit der aktuell eingestellten Hintergrundfarbe dargestellt.</para>
<para>Gibt die Hintergrundfarbe für die Anzeige der Datei an. Die Zeichenfolge kann im Format <quote>#RRGGBB</quote> (as returned by <methodname>TQColor::name()</methodname>) erfolgen, wobei RR, GG und BB zweistellige Hexadezimalwerte für Rot, Grün und Blau sind. Alternativ kann die Zeichenfolge in allen Formaten angegeben werden, die von <methodname>TQColor::setNamedColor()</methodname> akzeptiert wird. Beispielsweise als Name aus der Farbdatenban von X (&eg; <quote>red</quote> or <quote>steelblue</quote>). Wird als Zeichenfolge der Wert null übergeben, wird die Datei mit der aktuell eingestellten Hintergrundfarbe dargestellt.</para>
</listitem>
</varlistentry>
@ -2178,29 +2178,29 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Erzeugt eine neue Erinnerung, die bei Fälligkeit einen Shell-Befehl ausführt.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2302,41 +2302,41 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Festlegen einer E-Mail-Erinnerung</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
nt <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endTime</replaceable>)
const TQString&amp; <replaceable>endTime</replaceable>)
</synopsis>
<refsect2>
@ -2465,7 +2465,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Es wird der Dialog <link linkend="alarm-edit-dlg">Neue Erinnerung</link> geöffnet.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -2503,7 +2503,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Es wird der Dialog <link linkend="alarm-edit-dlg">Neue Erinnerung</link> zum Erstellen einer neuen Erinnerung geöffnet.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>templateName</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>templateName</replaceable>)
</synopsis>
<refsect2>

@ -710,7 +710,7 @@ Gedruckt am: 30.01.2006 19:50
<refpurpose>Gibt die Versionsnummer von &karm; zurück.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -728,7 +728,7 @@ Gedruckt am: 30.01.2006 19:50
<refpurpose>Liefert den Beenden-Status von &karm; zurück.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -746,7 +746,7 @@ Gedruckt am: 30.01.2006 19:50
<refpurpose>Prüft, ob eine bestimmte Hauptaufgabe vorhanden ist.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString Aufgabenname)
<synopsis>TQString hastodo(TQString Aufgabenname)
</synopsis>
<refsect2>
<title>Parameter</title>
@ -762,7 +762,7 @@ Gedruckt am: 30.01.2006 19:50
</refsynopsisdiv>
<refsect1>
<title>Beschreibung</title>
<para><function>hastodo(QString Aufgabenname)</function> ist ein &DCOP;-Aufruf, der nach einer Hauptaufgabe mit dem übergebenen Namen sucht. Wird diese gefunden, ist der Rückgabewert die iCalendar-UID der Aufgabe, ansonsten wird eine leere Zeichenkette zurückgegeben. </para>
<para><function>hastodo(TQString Aufgabenname)</function> ist ein &DCOP;-Aufruf, der nach einer Hauptaufgabe mit dem übergebenen Namen sucht. Wird diese gefunden, ist der Rückgabewert die iCalendar-UID der Aufgabe, ansonsten wird eine leere Zeichenkette zurückgegeben. </para>
<para>Es wird die Datei durchsucht, die &karm; gerade geöffnet hat. Es werden auch alle Teilaufgaben durchsucht, nicht nur die Hauptaufgaben. Falls mehrere Aufgaben den selben Namen tragen, wird die erste gefundene Aufgabe zurückgegeben.</para>
</refsect1>
</refentry>
@ -776,7 +776,7 @@ Gedruckt am: 30.01.2006 19:50
<refpurpose>Fügt eine neue Aufgabe hinzu.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString Aufgabenname)
<synopsis>TQString addtodo(TQString Aufgabenname)
</synopsis>
<refsect2>
<title>Parameter</title>
@ -793,7 +793,7 @@ Gedruckt am: 30.01.2006 19:50
<refsect1>
<title>Beschreibung</title>
<para><function>addtodo(QString Aufgabenname)</function> ist ein &DCOP;-Aufruf, mit dem Sie eine neue Aufgabe zur geöffneten Datei hinzufügen können. Der Rückgabewert enthält die UID der neuen Aufgabe. </para>
<para><function>addtodo(TQString Aufgabenname)</function> ist ein &DCOP;-Aufruf, mit dem Sie eine neue Aufgabe zur geöffneten Datei hinzufügen können. Der Rückgabewert enthält die UID der neuen Aufgabe. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Beispiel</title>
<para>Um die Hilfe für die Klasse <classname>QString</classname> anzuzeigen:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Um die Hilfe für die Klasse <classname>TQString</classname> anzuzeigen:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText myWidget <quote>neuer Text</quote> </para>
<para>Dies setzt voraus, dass Sie sich innerhalb einer &kommander;-Datei befinden und Zugriff auf die Anweisung @pid haben, die die Prozess-ID enhält. Da ist es einfacher, <quote>kmdr-executor-@pid</quote> mit @dcopid zu ersetzen. Diese Syntax (möglicherweise ohne Anweisungen) kann von der Befehlszeile oder jedem externen Skript genutzt werden, um das &kommander;-Fenster zu ändern. </para>
<para>Weil &kommander; in seiner Alfa-Entwicklungsstufe noch keinen vollständigen Parser hat, ist die Verwendung des viel schnelleren internen &DCOP; aus einem anderen Anwendungsfenster (Konsolen-&DCOP; ist langsam) viel schwieriger, weil viele Informationen mitgegeben werden müssen, einschließlich eines Prototyps des Aufrufes. Der Aufruf oben würde so aussehen: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Bedienelement, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Bedienelement, true) </para>
<para>Zur Zeit der Erstellung sollte aufgepasst werden, dass die Schachtelung von &DCOP;-Aufrufen innerhalb von Skriptsprachkonstrukten (wie <application>bash</application>) die Verwendung von Konsolenaufrufen verlangt.<emphasis>Bei der Verwendung von internem &DCOP; werden alle &kommander;-Anweisungen zuerst ausgeführt und dann erst das Skript.</emphasis> </para>
<para>Es gibt einen neuen vereinfachten Weg, &DCOP; innerhalb von &kommander; zu nutzen, mittels Objektsyntax. Angenommen, der Text in einem Bedienelement namens @Zeileneingabefeld1 soll geändert werden. Dies würde so aussehen. </para>
<para>@Zeileneingabefeld1.changeWidgetText(Neuer Text) </para>
@ -29,15 +29,15 @@
<title>&DCOP; für globale Variablen</title>
<variablelist>
<varlistentry>
<term>global(QString VariablenName)</term>
<term>global(TQString VariablenName)</term>
<listitem>
<para>Liefert den Wert der angegebenen globalen Variable zurück. Wenn ein Skript aus dem &kommander;-Fenster gestartet wird, verschwinden alle (nicht-globalen) Variablen, die im Skript belegt wurden, nach Ablauf des Skripts und sind so nicht für andere Skripte oder neue Instanzen des aufrufenden Prozesses verfügbar. Der <quote>Gültigkeitsbereich</quote> global bedeutet, dass die Variable für jeden Prozess dieses Fensters existiert, bis es geschlossen wird. Diese Variablen können jederzeit mit einem weiteren <function>@setGlobal</function>-Aufruf geändert werden. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString VariablenName, QString value)</term>
<term>setGlobal(TQString VariablenName, TQString value)</term>
<listitem>
<para>Erstellt eine Variable, die global im Hinblick auf den Fensterprozeß ist und weist ihr den Wert zu. Dieser Wert kann mit global(QString VariablenName) gelesen oder geändert werden. </para>
<para>Erstellt eine Variable, die global im Hinblick auf den Fensterprozeß ist und weist ihr den Wert zu. Dieser Wert kann mit global(TQString VariablenName) gelesen oder geändert werden. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString Text)</term>
<term>changeWidgetText(TQString Text)</term>
<listitem>
<para>Dies sollte in setWidgetText umbenannt werden und der Name ist daher veraltet. Es entfernt den angezeigten Text im Bedienelement und ersetzt ihn mit dem Parametertext. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString Text)</term>
<term>setAssociatedText(TQString Text)</term>
<listitem>
<para>Dies setzt den Standardtext von &kommander;. Das ist typischerweise gleich wie <quote>@widgetText</quote> um anzuzeigen, was im Bedienelement enthalten ist. Normalerweise hat man keinen Bedarf dafür, aber auf jeden Fall vorhanden. Trifft für alle Bedienelemente zu, die Text enthalten können. </para>
</listitem>
@ -78,7 +78,7 @@
<title>&DCOP; für Listenfeld- und Kombinationsfeld-Bedienelemente</title>
<variablelist>
<varlistentry>
<term>addListItem(QString Element, int Index)</term>
<term>addListItem(TQString Element, int Index)</term>
<listitem>
<para>Fügt ein Element zu einem ListBox-Bedienelement am angegebenen Index hinzu. Der Index beginnt mit Null. Zum Hinzufügen am Ende der Liste dient -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString Element)</term>
<term>addUniqueItem(TQString Element)</term>
<listitem>
<para>addUniqueItem fügt ein Element am Ende der Liste nur dann hinzu, wenn es einmalig ist. </para>
</listitem>
@ -126,7 +126,7 @@
<title>&DCOP; für Ankreuzfeld- und Auswahlknopf-Bedienelemente</title>
<variablelist>
<varlistentry>
<term>setChecked(QString BedienelementName, bool aktiviert)</term>
<term>setChecked(TQString BedienelementName, bool aktiviert)</term>
<listitem>
<para>Aktiviert/deaktiviert Ankreuzfeld- oder Auswahlknopf-Bedienelemente. </para>
</listitem>
@ -138,7 +138,7 @@
<title>&DCOP; für Karteireiter-Bedienelemente</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString BedienelementName, int Index)</term>
<term>setCurrentTab(TQString BedienelementName, int Index)</term>
<listitem>
<para>Wählt das Unterfenster mittels Index für Karteireiter-Bedienelemente. Der Index beginnt bei Null. </para>
</listitem>

@ -4037,5 +4037,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Zoom:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29539,20 +29539,20 @@ msgstr "SSL-Zertifikat-Vertrauen"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Fehler bei der Auswertung des regulären Ausdrucks."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt&4-Stil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt&4-Stil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Geben Sie hier die Basisklasse an, von der Ihre neue\n"
#~ "Klasse abgeleitet werden soll. Haben Sie \n"
#~ "\"Von QWidget abgeleitete Klasse erstellen\" ausgewählt,\n"
#~ "wird die neue Klasse von QWidget abgeleitet.\n"
#~ "\"Von TQWidget abgeleitete Klasse erstellen\" ausgewählt,\n"
#~ "wird die neue Klasse von TQWidget abgeleitet.\n"
#~ "Wird kein Name für die Basisklasse eingegeben, hat die\n"
#~ "erzeugte Klasse keine Basisklasse. Sie können hier auch\n"
#~ "Template-Klassen eingeben, wie BasisKlasse<int, int>."

@ -1608,8 +1608,8 @@ msgid ""
"<p><b>TQWidget::%1</b></p><p>There is no documentation available for this "
"property.</p>"
msgstr ""
"<p><b>TQWidget::%1</b></p><p>Es ist keine Dokumentation für diese "
"Eigenschaft verfügbar.</p> "
"<p><b>TQWidget::%1</b></p><p>Es ist keine Dokumentation für diese Eigenschaft "
"verfügbar.</p> "
#: editor/propertyeditor.cpp:3391
msgid "New Signal Handler"

@ -4026,5 +4026,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Εστίαση:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29616,19 +29616,19 @@ msgstr "Έμπιστο πιστοποιητικό SSL"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Σφάλμα κατά τη μεταγλώττιση της κανονικής έκφρασης."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Στυλ Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Στυλ Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Εισάγετε την κλάση βάση από την οποία θα προκύψει η νέα σας κλάση. Αν "
#~ "έχετε ενεργοποιήσει 'Δημιουργία απογόνου της QWidget' η νέα κλάση θα "
#~ "προκύψει από την QWidget. Αν δεν ονομαστεί η κλάση βάση, η νέα κλάση δε "
#~ "έχετε ενεργοποιήσει 'Δημιουργία απογόνου της TQWidget' η νέα κλάση θα "
#~ "προκύψει από την TQWidget. Αν δεν ονομαστεί η κλάση βάση, η νέα κλάση δε "
#~ "θα έχει γονέα. Μπορείτε εδώ να χρησιμοποιήσετε και κλάσεις πρότυπα (όπως "
#~ "ΚλάσηΒάση<int, int>)"

@ -465,7 +465,7 @@ expressions of perl, nor with those of for example
<term><userinput>(?!PATTERN)</userinput> (Negative lookahead)</term>
<listitem><para>The negative lookahead prevents a possible match to be acknowledged if the following part of the searched string does match its <emphasis>PATTERN</emphasis>.</para>
<para>The expression <userinput>const \w+\b(?!\s*&amp;)</userinput> will match at <quote>const char</quote> in the string <quote>const char* foo</quote> while it can not match <quote>const QString</quote> in <quote>const QString&amp; bar</quote> because the <quote>&amp;</quote> matches the negative lookahead assertion pattern.</para>
<para>The expression <userinput>const \w+\b(?!\s*&amp;)</userinput> will match at <quote>const char</quote> in the string <quote>const char* foo</quote> while it can not match <quote>const TQString</quote> in <quote>const TQString&amp; bar</quote> because the <quote>&amp;</quote> matches the negative lookahead assertion pattern.</para>
</listitem>
</varlistentry>

@ -465,7 +465,7 @@ Welcome Text = Loading KDE
<para>Before your application starts its computation intensive work, or before it starts loading plugins, &etc;, invoke &ksplash; as follows:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -494,8 +494,8 @@ if (kapp-&gt;startServiceByDesktopName("ksplash", args, &amp;error, &amp;KSplash
<para>Whenever you want to display a message with or without an icon, use</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt; QString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(QString,QString,QString)", data))
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt; TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -560,7 +560,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Plugin classes should provide a <literal>static</literal> function called <function>names</function> that returns a list of names by which it can be invoked.</para></listitem>
<listitem><para>If the plugin can be configured in the control centre module, it should provide a <literal>ThemeEngineConfig</literal>-based class for the configuration.</para></listitem>
<listitem><para>Plugin classes must override at least one of the virtual functions <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> and <function>slotUpdateSteps</function> to make it usable.</para></listitem>
<listitem><para>The constructor should take the form <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> so that it can be used with <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>The constructor should take the form <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> so that it can be used with <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>The last requirement may seem complicated, but, as we will see later, by adding a single line to your source files, you can usually ignore it.</para>
</sect1>
@ -593,11 +593,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -614,7 +614,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -625,15 +625,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Let us analyse the listing above. The <classname>Theme2k</classname> class satisfies the naming conventions, and is inherited from <classname>ThemeEngine</classname>. It provides a <methodname>Theme2k::names()</methodname>, and has a constructor that takes the required parameters: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> and also provides a simple <methodname>Theme2k::slotSetText()</methodname> method. For the moment, do not worry about the <classname>RotWidget</classname> class. It is a small widget that provides some eye candy for the user. Our plugin is very simple and does not display any icons or show a progressbar. If you would like to display icons, override the <function>slotSetPixmap</function> function. Similar functions exist for setting the progressbar range (<function>slotUpdateSteps</function>) and incrementing(<function>slotUpdateProgress</function>) the current step. </para>
<para>Let us analyse the listing above. The <classname>Theme2k</classname> class satisfies the naming conventions, and is inherited from <classname>ThemeEngine</classname>. It provides a <methodname>Theme2k::names()</methodname>, and has a constructor that takes the required parameters: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> and also provides a simple <methodname>Theme2k::slotSetText()</methodname> method. For the moment, do not worry about the <classname>RotWidget</classname> class. It is a small widget that provides some eye candy for the user. Our plugin is very simple and does not display any icons or show a progressbar. If you would like to display icons, override the <function>slotSetPixmap</function> function. Similar functions exist for setting the progressbar range (<function>slotUpdateSteps</function>) and incrementing(<function>slotUpdateProgress</function>) the current step. </para>
</sect1>
<sect1 id="Implementation">
<title>Implementation of the plugin</title>
@ -646,7 +646,7 @@ private:
<para>The macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> is declared in <filename>kgenericfactory.h</filename>. Onwards to the constructor! Since this is a very simple plugin, the constructor is pretty straightforward.</para>
<example>
<title>Plugin constructor</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args )
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args )
:ThemeEngine( parent, name, args )
{
readSettings();
@ -666,23 +666,23 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color", &amp;DefaultTBgColor );
mTFgColor = cfg-&gt;readColorEntry( "Title Foreground Color", &amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -794,7 +794,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args )
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args )
:ThemeEngine( parent, name, args )
{
readSettings();
@ -817,7 +817,7 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() + (mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() + (mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -858,23 +858,23 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color", &amp;DefaultTBgColor );
mTFgColor = cfg-&gt;readColorEntry( "Title Foreground Color", &amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -893,11 +893,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -908,7 +908,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -931,8 +931,8 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp; c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp; c2, int sp )
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP Functions</title>
<para>The &kstars; <abbrev>DCOP</abbrev> Interface includes the following functions: <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function>: Point the display focus in a direction specified by the argument. This can be the name of any object in the sky, or one of the following directional words or abbreviations: zenith (or z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function>: Point the display focus in a direction specified by the argument. This can be the name of any object in the sky, or one of the following directional words or abbreviations: zenith (or z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Point the display focus at the specified equatorial coordinates. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Pause for t seconds before continuing with subsequent script commands. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Halt the script execution until the user presses the specified key. At this point, you cannot specify combination keystrokes (such as <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); just use simple keys. You can type <quote>space</quote> to indicate the spacebar. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Halt the script execution until the user presses the specified key. At this point, you cannot specify combination keystrokes (such as <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); just use simple keys. You can type <quote>space</quote> to indicate the spacebar. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Toggle whether tracking mode is engaged. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Adjust a view option. There are dozens and dozens of options available; basically everything you can change in the <guilabel>Configure &kstars; Window</guilabel> can be changed here as well. The first argument is the name of the option (the names are taken from the <filename>kstarsrc</filename> configuration file), and the second argument is the desired value. The argument parser is designed to be robust, so if you accidentally send it bad data it should fail gracefully. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Adjust a view option. There are dozens and dozens of options available; basically everything you can change in the <guilabel>Configure &kstars; Window</guilabel> can be changed here as well. The first argument is the name of the option (the names are taken from the <filename>kstarsrc</filename> configuration file), and the second argument is the desired value. The argument parser is designed to be robust, so if you accidentally send it bad data it should fail gracefully. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Change the observing location to the specified city. If no city matching the argument strings is found, then nothing happens. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Change the observing location to the specified city. If no city matching the argument strings is found, then nothing happens. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Halt the simulation clock. </para></listitem>

@ -2708,8 +2708,8 @@ at some future date.</para></note>
</refnamediv>
<refsynopsisdiv>
<synopsis>
void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -2759,8 +2759,8 @@ ignored.</para></note>
</refnamediv>
<refsynopsisdiv>
<synopsis>
void triggerEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
void triggerEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -2817,8 +2817,8 @@ ignored.</para></note>
</refnamediv>
<refsynopsisdiv>
<synopsis>
void handleEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
void handleEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -2884,26 +2884,26 @@ ignored.</para></note>
</refnamediv>
<refsynopsisdiv>
<synopsis>
bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const QString&amp; <replaceable>fgColour</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>fgColour</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>, int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const QString&amp; <replaceable>fgColour</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>fgColour</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -2911,18 +2911,18 @@ bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const QString&amp; <replaceable>fgColour</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>fgColour</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2977,10 +2977,10 @@ applicable to message alarms.</para>
<listitem>
<para>Specifies the background colour for displaying the message. The
string may be in the format <quote>#RRGGBB</quote> (as returned by
<methodname>QColor::name()</methodname>) where RR, GG and BB are
<methodname>TQColor::name()</methodname>) where RR, GG and BB are
two-digit hexadecimal values for red, green and blue. Alternatively
the string may be in any of the other formats accepted by
<methodname>QColor::setNamedColour()</methodname>, such as a name from
<methodname>TQColor::setNamedColour()</methodname>, such as a name from
the X colour database (&eg; <quote>red</quote> or
<quote>steelblue</quote>). Set the string to null to specify the
current default background colour.</para>
@ -3132,22 +3132,22 @@ text or image file.</refpurpose>
<refsynopsisdiv>
<synopsis>
bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -3156,15 +3156,15 @@ bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
</synopsis>
<synopsis>
bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColour</replaceable>,
const TQString&amp; <replaceable>bgColour</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -3220,10 +3220,10 @@ applicable to file alarms.</para>
<listitem>
<para>Specifies the background colour for displaying the file. The
string may be in the format <quote>#RRGGBB</quote> (as returned by
<methodname>QColor::name()</methodname>) where RR, GG and BB are
<methodname>TQColor::name()</methodname>) where RR, GG and BB are
two-digit hexadecimal values for red, green and blue. Alternatively
the string may be in any of the other formats accepted by
<methodname>QColor::setNamedColour()</methodname>, such as a name from
<methodname>TQColor::setNamedColour()</methodname>, such as a name from
the X colour database (&eg; <quote>red</quote> or
<quote>steelblue</quote>). Set the string to null to specify the
current default background colour.</para>
@ -3346,17 +3346,17 @@ command.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>
bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
@ -3364,13 +3364,13 @@ bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -3520,25 +3520,25 @@ parameters, its usage is identical to
</refnamediv>
<refsynopsisdiv>
<synopsis>
bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
@ -3546,17 +3546,17 @@ bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>
bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
nt <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endTime</replaceable>)
const TQString&amp; <replaceable>endTime</replaceable>)
</synopsis>
<refsect2>
@ -3736,7 +3736,7 @@ dialogue</link> to edit an alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>
bool edit(const QString&amp; <replaceable>eventID</replaceable>)
bool edit(const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -3780,7 +3780,7 @@ dialogue</link> to edit a new alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>
bool editNew(const QString&amp; <replaceable>templateName</replaceable>)
bool editNew(const TQString&amp; <replaceable>templateName</replaceable>)
</synopsis>
<refsect2>

@ -4022,5 +4022,5 @@ msgstr ""
#~ "Could not find active language.\n"
#~ "Please select one of the installed languages to generate the code with."
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29901,14 +29901,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have ticked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have ticked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"

@ -3999,5 +3999,5 @@ msgstr ""
#~ msgid "Form1"
#~ msgstr "Form1"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -464,7 +464,7 @@ regulares de perl, ni de <command>grep</command>, entre otros.</synopsis>
<term><userinput>(?!PATRÓN)</userinput> (Anticipación negativa)</term>
<listitem><para>La anticipación negativa previene una posible coincidencia si la parte siguiente de la cadena coincide con el <emphasis>PATRÓN</emphasis>.</para>
<para>La expresión <userinput>const \w+\b(?!\s*&amp;)</userinput> coincidirá con «const char» en la cadena «const char* foo», mientras que no coincidirá con «const QString» en «const QString&amp; bar», ya que el «&amp;» coincide con el patrón de la declaración de anticipación negativa.</para>
<para>La expresión <userinput>const \w+\b(?!\s*&amp;)</userinput> coincidirá con «const char» en la cadena «const char* foo», mientras que no coincidirá con «const TQString» en «const TQString&amp; bar», ya que el «&amp;» coincide con el patrón de la declaración de anticipación negativa.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Cargando KDE
<para>Antes de que su aplicación se inicie comience a trabajar, o antes de que comience a cargar complementos, &etc;, llame a &ksplash; de la siguiente forma:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -530,8 +530,8 @@ if (kapp-&gt;startServiceByDesktopName("ksplash", args, &amp;error, &amp;KSplash
<para>Cuando quiera mostrar un mensaje, con o sin icono, utilice:</para>
<programlisting>arg &lt;&lt; QString("nombreIcono") &lt;&lt; QString("nombrePrograma") &lt;&lt; QString("Alguna descripción");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(QString,QString,QString)", data))
<programlisting>arg &lt;&lt; TQString("nombreIcono") &lt;&lt; TQString("nombrePrograma") &lt;&lt; TQString("Alguna descripción");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(TQString,TQString,TQString)", data))
{
// Aquí se procesará el error.
}
@ -596,7 +596,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Las clases de los complementos deberían proporcionar una función <literal>static</literal> llamada <function>names</function> que devuelva una lista de nombres que puedan ser llamados.</para></listitem>
<listitem><para>Si el complemento puede configurarse en el módulo del centro de control, debería proporcionar una clase basada en <literal>ThemeEngineConfig</literal> para la configuración.</para></listitem>
<listitem><para>Las clases de los complementos pueden sobreescribir, al menos, las funciones virtuales <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> y <function>slotUpdateSteps</function> para hacerlo utilizable.</para></listitem>
<listitem><para>El constructor debería tener la forma <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal>, y por tanto, puede ser utilizado con <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>El constructor debería tener la forma <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal>, y por tanto, puede ser utilizado con <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>El último requisito puede parecer complicado, pero, como se verá posteriormente bastará con añadir una línea a sus archivos fuente, y que generalmente podrá ignorar.</para>
</sect1>
@ -629,11 +629,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -650,7 +650,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -661,15 +661,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analicemos el listado anterior. La clase <classname>Theme2k</classname> cumple con la convención de nombres, y está heredada de <classname>ThemeEngine</classname>. Proporciona <methodname>Theme2k::names()</methodname>, y tiene un constructor que toma los parámetros requeridos: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> y también proporciona un método simple <methodname>Theme2k::slotSetText()</methodname>. Por el momento no se preocupe de la clase <classname>RotWidget</classname>. Es un pequeño componente que proporcionará algo que le gustará al usuario. Nuestro complemento es muy simple y no muestra iconos en la barra de progreso. Si desea mostrar iconos, sobreescriba la función <function>slotSetPixmap</function>. Existen funciones similares para configurar los pasos de la barra de progreso (<function>slotUpdateSteps</function>) e incrementan el paso actual (<function>slotUpdateProgress</function>). </para>
<para>Analicemos el listado anterior. La clase <classname>Theme2k</classname> cumple con la convención de nombres, y está heredada de <classname>ThemeEngine</classname>. Proporciona <methodname>Theme2k::names()</methodname>, y tiene un constructor que toma los parámetros requeridos: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> y también proporciona un método simple <methodname>Theme2k::slotSetText()</methodname>. Por el momento no se preocupe de la clase <classname>RotWidget</classname>. Es un pequeño componente que proporcionará algo que le gustará al usuario. Nuestro complemento es muy simple y no muestra iconos en la barra de progreso. Si desea mostrar iconos, sobreescriba la función <function>slotSetPixmap</function>. Existen funciones similares para configurar los pasos de la barra de progreso (<function>slotUpdateSteps</function>) e incrementan el paso actual (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Implementación del complemento</title>
@ -682,7 +682,7 @@ private:
<para>La macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> está declarada en <filename>kgenericfactory.h</filename>. ¡Ahora vamos con el constructor! Como esta es un complemento muy sencillo, el constructor es muy sencillo.</para>
<example>
<title>Constructor del complemento</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -703,23 +703,23 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("Tema KSplash: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("Tema KSplash: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Color del fondo del título", &amp;DefaultTBgColor );
mTFgColor = cfg-&gt;readColorEntry( "Color del primer plano del título", &amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Color del rotator 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Color del rotador 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Velocidad de rotación", 30 );
mWndTitle = cfg-&gt;readEntry( "Título de la ventana", i18n("Por favor espere...") );
mLogoFile = cfg-&gt;readEntry( "Archivo de logotipo", QString::null );
mLogoFile = cfg-&gt;readEntry( "Archivo de logotipo", TQString::null );
}
</programlisting>
</example>
@ -831,7 +831,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -855,8 +855,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -897,10 +897,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -908,14 +908,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Color del rotador 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Color del rotador 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Velocidad del rotador", 30 );
mWndTitle = cfg-&gt;readEntry( "Ventana del título", i18n("Por favor, espere...") );
mLogoFile = cfg-&gt;readEntry( "Archivo de logotipo", QString::null );
mLogoFile = cfg-&gt;readEntry( "Archivo de logotipo", TQString::null );
}
</programlisting>
</sect1>
@ -934,11 +934,11 @@ void Theme2k::readSettings()
/**
* @short Muestra un gradiente girando.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -949,7 +949,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -972,8 +972,8 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp; c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp; c2, int sp )
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -213,16 +213,16 @@
<para>Puede obtener una lista de las interfaces &DCOP; disponibles utilizando los argumentos adecuados, como los que se muestran en este ejemplo: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString nombrearchivo)
bool save(TQString nombrearchivo)
void slotSaveAs()
void slotCopy()
void setTime(int nuevaHora)
int timeout()
void setURL(QString nuevaURL)
void setURL(TQString nuevaURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -752,7 +752,7 @@ public:
<para>Es algo diferente a deshacer una referencia a un puntero NULL. No le dijo al objeto lo que es, e intenta utilizarlo. La suposición aquí es que quiere crear una nueva instancia local de un objeto Arts::Synth_PLAY. Por supuesto, puede ser que quisiera obtener algo más (como crear el objeto en alguna parte, o utilizar un objeto remoto existente). Sin embargo, es una forma rápida de crear objetos. Este tipo de creación no funcionará una vez que haya realizado una asignación (como una referencia nula). </para>
<para>El equivalente código C++ sería <programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> que, obviamente, en C++ provocará fallos de segmentación. Aquí esto es diferente. Esta creación es especialmente delicada puesto que puede que no exista necesariamente una implementación para su interfaz. </para>

@ -1219,7 +1219,7 @@ struct TypeDef {
<para>No es necesario basar una plataforma multimedia en &Qt;. Una vez decidido ésto, y utilizando la serialización y otras funcionalidades de &Qt;, se podría concluir fácilmente en una plataforma solo-&Qt; (e incluso solo-&kde;). Quiero decir: tan pronto como vea a GNOME utilizando &DCOP;, o quizá algo similar, comprobaré si estaba equivocado. </para>
<para>Como &DCOP; no sabe nada sobre los tipos de datos que envía, podría utilizar &DCOP; sin utilizar &Qt;, veamos el uso diario que se hace de &kde;: la gente envía tipos como <classname>QString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ..., de un lado para otro. Esto utiliza la serialización &Qt;. Por eso si alguien elige soportar &DCOP; en un programa GNOME, debería utilizar tipos <classname>QString</classname>,... (aunque no lo haga de facto), y emular la forma en que &Qt; realiza la transmisión, o podría enviar otros tipos de cadena, imágenes y rectángulos, lo que dejaría de ser interoperativo. </para>
<para>Como &DCOP; no sabe nada sobre los tipos de datos que envía, podría utilizar &DCOP; sin utilizar &Qt;, veamos el uso diario que se hace de &kde;: la gente envía tipos como <classname>TQString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ..., de un lado para otro. Esto utiliza la serialización &Qt;. Por eso si alguien elige soportar &DCOP; en un programa GNOME, debería utilizar tipos <classname>TQString</classname>,... (aunque no lo haga de facto), y emular la forma en que &Qt; realiza la transmisión, o podría enviar otros tipos de cadena, imágenes y rectángulos, lo que dejaría de ser interoperativo. </para>
<para>Bueno, sea como fuere, &arts; siempre intentó funcionar con o sin &kde;, con o sin &Qt;, con o sin X11, y quizá incluso con o sin &Linux; (y no ha habido problemas con la gente que lo ha portado a un popular sistema operativo no libre). </para>

@ -1690,8 +1690,8 @@
<refpurpose>cancela una alarma ya planificada.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1733,8 +1733,8 @@
<refpurpose>lanza una alarma ya planificada.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>archivoCalendar</replaceable>,
const QString&amp; <replaceable>IDevento</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>archivoCalendar</replaceable>,
const TQString&amp; <replaceable>IDevento</replaceable>)
</synopsis>
<refsect2>
@ -1778,8 +1778,8 @@
<refpurpose>lanza o cancela una alarma ya planificada.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>archivoCalendar</replaceable>,
const QString&amp; <replaceable>IDevento</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>archivoCalendar</replaceable>,
const TQString&amp; <replaceable>IDevento</replaceable>)
</synopsis>
<refsect2>
@ -1829,43 +1829,43 @@
<refpurpose>planifica un nuevo mensaje de alarma.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const QString&amp; <replaceable>color1Plano</replaceable>,
const QString&amp; <replaceable>tipograf</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>color1Plano</replaceable>,
const TQString&amp; <replaceable>tipograf</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
const QString&amp; <replaceable>repetic.</replaceable>,
const TQString&amp; <replaceable>repetic.</replaceable>,
int <replaceable>intervaloRepeticSimple</replaceable>,
int <replaceable>contadorRepeticSimple</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>, int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const QString&amp; <replaceable>color1Plano</replaceable>,
const QString&amp; <replaceable>tipograf</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>color1Plano</replaceable>,
const TQString&amp; <replaceable>tipograf</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
int <replaceable>contadorRepetic</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const QString&amp; <replaceable>color1Plano</replaceable>,
const QString&amp; <replaceable>tipograf</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>color1Plano</replaceable>,
const TQString&amp; <replaceable>tipograf</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
const QString&amp; <replaceable>fechaHoraFin</replaceable>)
const TQString&amp; <replaceable>fechaHoraFin</replaceable>)
</synopsis>
<refsect2>
@ -1902,7 +1902,7 @@
<varlistentry>
<term><parameter>ColorFondo</parameter></term>
<listitem>
<para>Especifica el color de fondo para cuando se muestre el mensaje. La cadena puede tener el formato <quote>#RRGGBB</quote> (tal y como devuelve el método <methodname>QColor::name()</methodname>), donde RR, GG y BB son valores hexadecimales de dos dígitos para el rojo, el verde y el azul. Además, la cadena puede ser de cualquiera de los formatos que acepte <methodname>QColor::setNamedColor()</methodname>, como un nombre de la base de datos de colores de las X (&eg; <quote>red</quote> o <quote>steelblue</quote>). Defina la cadena como nula para indicar que se use el color de fondo predefinido actual.</para>
<para>Especifica el color de fondo para cuando se muestre el mensaje. La cadena puede tener el formato <quote>#RRGGBB</quote> (tal y como devuelve el método <methodname>TQColor::name()</methodname>), donde RR, GG y BB son valores hexadecimales de dos dígitos para el rojo, el verde y el azul. Además, la cadena puede ser de cualquiera de los formatos que acepte <methodname>TQColor::setNamedColor()</methodname>, como un nombre de la base de datos de colores de las X (&eg; <quote>red</quote> o <quote>steelblue</quote>). Defina la cadena como nula para indicar que se use el color de fondo predefinido actual.</para>
</listitem>
</varlistentry>
@ -2004,21 +2004,21 @@
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
const QString&amp; <replaceable>repetic</replaceable>,
const TQString&amp; <replaceable>repetic</replaceable>,
int <replaceable>intervaloRepeticSimple</replaceable>,
int <replaceable>contadorRepeticSimple</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
@ -2026,15 +2026,15 @@
int <replaceable>contadorRepetic</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>colorFondo</replaceable>,
const TQString&amp; <replaceable>colorFondo</replaceable>,
const KURL&amp; <replaceable>URLaudio</replaceable>,
int <replaceable>recordatorio</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
const QString&amp; <replaceable>fechaHoraFin</replaceable>)
const TQString&amp; <replaceable>fechaHoraFin</replaceable>)
</synopsis>
<refsect2>
@ -2071,7 +2071,7 @@
<varlistentry>
<term><parameter>ColorFondo</parameter></term>
<listitem>
<para>Especifica el color de fondo para cuando se muestre el archivo. La cadena puede tener el formato <quote>#RRGGBB</quote> (tal y como devuelve el método <methodname>QColor::name()</methodname>), donde RR, GG y BB son valores hexadecimales de dos dígitos para el rojo, el verde y el azul. Además, la cadena puede ser de cualquiera de los otros formatos que acepta <methodname>QColor::setNamedColor()</methodname>, como un nombre de la base de datos de colores de las X (&eg; <quote>red</quote> o <quote>steelblue</quote>). Defina la cadena como nula para indicar que se use el color de fondo predefinido actual.</para>
<para>Especifica el color de fondo para cuando se muestre el archivo. La cadena puede tener el formato <quote>#RRGGBB</quote> (tal y como devuelve el método <methodname>TQColor::name()</methodname>), donde RR, GG y BB son valores hexadecimales de dos dígitos para el rojo, el verde y el azul. Además, la cadena puede ser de cualquiera de los otros formatos que acepta <methodname>TQColor::setNamedColor()</methodname>, como un nombre de la base de datos de colores de las X (&eg; <quote>red</quote> o <quote>steelblue</quote>). Defina la cadena como nula para indicar que se use el color de fondo predefinido actual.</para>
</listitem>
</varlistentry>
@ -2157,29 +2157,29 @@
<refpurpose>planifica una alarma nueva que ejecuta un comando de la shell.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>lineaComando</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>lineaComando</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>repetic</replaceable>,
const TQString&amp; <replaceable>repetic</replaceable>,
int <replaceable>intervaloRepeticSimple</replaceable>,
int <replaceable>contadorRepeticSimple</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>lineaComando</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>lineaComando</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
int <replaceable>contadorRepetic</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>lineaComando</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>lineaComando</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
const QString&amp; <replaceable>fechaHoraFin</replaceable>)
const TQString&amp; <replaceable>fechaHoraFin</replaceable>)
</synopsis>
<refsect2>
@ -2281,41 +2281,41 @@
<refpurpose>planifica una alarma nueva que manda un correo electrónico.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>ID de</replaceable>,
const QString&amp; <replaceable>direcciones</replaceable>,
const QString&amp; <replaceable>asunto</replaceable>,
const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>adjuntos</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>ID de</replaceable>,
const TQString&amp; <replaceable>direcciones</replaceable>,
const TQString&amp; <replaceable>asunto</replaceable>,
const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>adjuntos</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
const QString&amp; <replaceable>repetición</replaceable>,
const TQString&amp; <replaceable>repetición</replaceable>,
int <replaceable>intervaloRepeticionesSimple</replaceable>,
int <replaceable>contadorRepeticionesSimple</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>ID de</replaceable>,
const QString&amp; <replaceable>direcciones</replaceable>,
const QString&amp; <replaceable>asunto</replaceable>,
const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>adjuntos</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>ID de</replaceable>,
const TQString&amp; <replaceable>direcciones</replaceable>,
const TQString&amp; <replaceable>asunto</replaceable>,
const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>adjuntos</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
int <replaceable>banderas</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
int <replaceable>contadorRepetic</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>ID de</replaceable>,
const QString&amp; <replaceable>direcciones</replaceable>,
const QString&amp; <replaceable>asunto</replaceable>,
const QString&amp; <replaceable>mensaje</replaceable>,
const QString&amp; <replaceable>adjuntos</replaceable>,
const QString&amp; <replaceable>fechaHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>ID de</replaceable>,
const TQString&amp; <replaceable>direcciones</replaceable>,
const TQString&amp; <replaceable>asunto</replaceable>,
const TQString&amp; <replaceable>mensaje</replaceable>,
const TQString&amp; <replaceable>adjuntos</replaceable>,
const TQString&amp; <replaceable>fechaHora</replaceable>,
int <replaceable>cancelarSiTarde</replaceable>,
nt <replaceable>banderas</replaceable>,
int <replaceable>tipoRepetic</replaceable>,
int <replaceable>intervaloRepetic</replaceable>,
const QString&amp; <replaceable>horaFin</replaceable>)
const TQString&amp; <replaceable>horaFin</replaceable>)
</synopsis>
<refsect2>
@ -2444,7 +2444,7 @@
<refpurpose>Muestra el <link linkend="alarm-edit-dlg">diálogo de edición de alarma</link> para editar una alarma.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -2482,7 +2482,7 @@
<refpurpose>Muestra el <link linkend="alarm-edit-dlg">diálogo de edición de alarma</link> para editar una alarma nueva.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>nombrePlantilla</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>nombrePlantilla</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Impreso el: 2004-07-13 18:10
<refpurpose>Devuelve la ejecución de «version» de &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Impreso el: 2004-07-13 18:10
<refpurpose>Devuelve la ejecución de «quit» de &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Impreso el: 2004-07-13 18:10
<refpurpose>Comprueba si existe una tarea pendiente de nivel superior.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString taskname)
<synopsis>TQString hastodo(TQString taskname)
</synopsis>
<refsect2>
<title>Parámetros</title>
@ -786,7 +786,7 @@ Impreso el: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Descripción</title>
<para><function>hastodo(QString taskname)</function> es una llamada &DCOP; que busca un nombre que se le proporciona. Si lo encuentra, devuelve el UID del iCalendar que identifica la tarea pendiente. Si no lo encuentra, devuelve una cadena vacía. </para>
<para><function>hastodo(TQString taskname)</function> es una llamada &DCOP; que busca un nombre que se le proporciona. Si lo encuentra, devuelve el UID del iCalendar que identifica la tarea pendiente. Si no lo encuentra, devuelve una cadena vacía. </para>
<para>El archivo iCalendar que ha abierto actualmente &karm; es en el que se estaba buscando. Se busca en todo el árbol, no sólo en las tareas pendientes de nivel superior. Si hay más de una tarea pendiente cuyo nombre coincida, se devuelve la primera que se encuentre.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Impreso el: 2004-07-13 18:10
<refpurpose>Añade una tarea pendiente nueva.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString todoname)
<synopsis>TQString addtodo(TQString todoname)
</synopsis>
<refsect2>
<title>Parámetros</title>
@ -817,7 +817,7 @@ Impreso el: 2004-07-13 18:10
<refsect1>
<title>Descripción</title>
<para><function>addtodo(QString todoname)</function> es una llamada &DCOP; que añade una tarea pendiente de nivel superior al almacenamiento actual. Se devuelve el UID de la nueva tarea pendiente. </para>
<para><function>addtodo(TQString todoname)</function> es una llamada &DCOP; que añade una tarea pendiente de nivel superior al almacenamiento actual. Se devuelve el UID de la nueva tarea pendiente. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Ejemplos</title>
<para>Muestra la ayuda de la clase <classname>QString</classname>.</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Muestra la ayuda de la clase <classname>TQString</classname>.</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>El segundo objeto de nuestro programa es el botón pulsable, una instancia de la clase <classname>QPushButton</classname>. Hemos usado el segundo de los dos constructores que se nos ofrecen para crear una instancia de este objeto. Este constructor acepta como parámetro un texto, que será la etiqueta que mostrará el botón (aquí es la cadena «¡Hola mundo!»). Luego hemos llamado al método <methodname>resize()</methodname> para cambiar el tamaño del botón en relación a su contenido (el botón debe ser más ancho para que la cadena aparezca completamente). </para>
<para>Pero, ¿qué hay del método <methodname>show()</methodname>? Ahora veremos que, al igual que la mayor parte de de widgetds, <classname>QPushButton</classname> se basa en la herencia simple. La documentación dice que esta clase hereda de <classname>QButton</classname>. Siga el enlace de la clase <classname>QButton</classname> y verá más widgets que han sido heredados por <classname>QPushButton</classname> (y que usaremos más adelante para explicar el mecanismo señal/slot). No obstante, el método <methodname>show()</methodname> no aparece listado, por lo que también tiene que haber sido proporcionado mediante herencia. La clase de la que hereda <classname>QButton</classname> es <classname>QWidget</classname>. Vuelva a seguir el enlace y verá el gran número de métodos que proporciona <classname>QWidget</classname>, incluido el método <methodname>show()</methodname>. Ahora entendemos lo que se ha hecho con el botón en el ejemplo: <orderedlist>
<para>Pero, ¿qué hay del método <methodname>show()</methodname>? Ahora veremos que, al igual que la mayor parte de de widgetds, <classname>QPushButton</classname> se basa en la herencia simple. La documentación dice que esta clase hereda de <classname>QButton</classname>. Siga el enlace de la clase <classname>QButton</classname> y verá más widgets que han sido heredados por <classname>QPushButton</classname> (y que usaremos más adelante para explicar el mecanismo señal/slot). No obstante, el método <methodname>show()</methodname> no aparece listado, por lo que también tiene que haber sido proporcionado mediante herencia. La clase de la que hereda <classname>QButton</classname> es <classname>TQWidget</classname>. Vuelva a seguir el enlace y verá el gran número de métodos que proporciona <classname>TQWidget</classname>, incluido el método <methodname>show()</methodname>. Ahora entendemos lo que se ha hecho con el botón en el ejemplo: <orderedlist>
<listitem><para>Crear una instancia de <classname>QPushButton</classname>, usar el segundo constructor para establecer el texto del botón</para></listitem>
<listitem><para>Modificar el tamaño del widget según su contenido</para></listitem>
<listitem><para>Establecer el widget como widget principal de la instancia «a» de <classname>QApplication</classname></para></listitem>
<listitem><para>Indicarle al widget que se muestre a sí mismo en la pantalla llamando a <methodname>show()</methodname>, un método heredado de <classname>QWidget</classname></para></listitem>
<listitem><para>Indicarle al widget que se muestre a sí mismo en la pantalla llamando a <methodname>show()</methodname>, un método heredado de <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>Tras llamar al método <methodname>exec()</methodname> la aplicación se hace visible al usuario, mostrando una ventana con el botón, que muestra el texto «¡Hola mundo!». Tenga en cuenta que los programas gráficos se comportan de un modo algo distinto al de las aplicaciones basadas en procedimientos. El punto principal es que aquí la aplicación entra en lo que se denomina un «bucle principal de eventos». Esto significa que el programa debe esperar las acciones del usuario y luego reaccionar a ellas. Además, para una aplicación Qt, el programa tiene que estar en el bucle principal de eventos para comenzar a manejar los eventos. La siguiente sección le enseñará brevemente lo que significa esto para el programador y qué ofrece Qt para procesar los eventos del usuario. </para>
<note><para>Para los usuarios avanzados: El botón no tiene un padre declarado en el constructor, por lo que es un widget aislado de nivel superior que se ejecuta en un bucle de eventos locales que no necesita esperar al bucle de eventos principal. Consulte la documentación de la clase QWidget y la «Guía de referencia de la biblioteca KDE».</para>
<note><para>Para los usuarios avanzados: El botón no tiene un padre declarado en el constructor, por lo que es un widget aislado de nivel superior que se ejecuta en un bucle de eventos locales que no necesita esperar al bucle de eventos principal. Consulte la documentación de la clase TQWidget y la «Guía de referencia de la biblioteca KDE».</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Ahora le daremos «vida» a la aplicación procesando los eventos del usuario. Generalmente, el usuario tiene dos formas de interactuar con un programa: el ratón y el teclado. Para ambas, una interfaz gráfica de usuario debe proporcionar métodos que detecten acciones y métodos que hagan algo como respuesta a estas acciones. </para>
<para>Para ello, el sistema de ventanas envía todos los eventos de interacción a la aplicación correspondiente. El objeto <classname>QApplication</classname> los envía luego a la ventana activa como objetos <classname>QEvent</classname>, y los widgets deben decidir por sí mismos qué hacer con ellos. Cuando un widget recibe el evento, procesa el método <methodname>QWidget::event(QEvent*)</methodname>, que se encarga de decidir qué evento ha sido ejecutado y cómo reaccionar a él. Por lo tanto, <methodname>event()</methodname> es el manejador principal de eventos. A continuación, el método <methodname>event()</methodname> pasa el evento a los llamados «filtros de eventos» para determinar qué ha ocurrido y qué se debe hacer con el evento. Si no existe ningún filtro que se haga responsable para dicho evento, se llama a los manejadores de eventos especializados. Mediante ellos podemos decidir entre: <itemizedlist>
<para>Para ello, el sistema de ventanas envía todos los eventos de interacción a la aplicación correspondiente. El objeto <classname>QApplication</classname> los envía luego a la ventana activa como objetos <classname>QEvent</classname>, y los widgets deben decidir por sí mismos qué hacer con ellos. Cuando un widget recibe el evento, procesa el método <methodname>TQWidget::event(QEvent*)</methodname>, que se encarga de decidir qué evento ha sido ejecutado y cómo reaccionar a él. Por lo tanto, <methodname>event()</methodname> es el manejador principal de eventos. A continuación, el método <methodname>event()</methodname> pasa el evento a los llamados «filtros de eventos» para determinar qué ha ocurrido y qué se debe hacer con el evento. Si no existe ningún filtro que se haga responsable para dicho evento, se llama a los manejadores de eventos especializados. Mediante ellos podemos decidir entre: <itemizedlist>
<listitem><para>Eventos del teclado -- Teclas «Tabulador» y «Mayúsculas-Tabulador»:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Note que todas las funciones de eventos son virtuales y protegidas, por lo que puede reimplementar los métodos encargados de manejar eventos que necesite en sus propios widgets y especificar cómo deben reaccionar. <classname>QWidget</classname> también contiene varios métodos virtuales más que pueden resultar de utilidad en sus programas. De ahí que sea recomendable conocer bien la clase <classname>QWidget</classname>. </para>
<para>Note que todas las funciones de eventos son virtuales y protegidas, por lo que puede reimplementar los métodos encargados de manejar eventos que necesite en sus propios widgets y especificar cómo deben reaccionar. <classname>TQWidget</classname> también contiene varios métodos virtuales más que pueden resultar de utilidad en sus programas. De ahí que sea recomendable conocer bien la clase <classname>TQWidget</classname>. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Interacción entre objetos mediantes señales y slots</title>
<para>Estamos llegando a una de las ventajas más obvias del juego de herramientas Qt: el mecanismo señal/objeto, que ofrece una solución útil y provechosa para la interacción de objetos (que normalmente se resuelve mediante funciones «callback» de las herramientas del sistema X-Window). Como esta comunicación requiere una programación estricta y a menudo dificulta la creación de interfaces de usuario (como se dice en la documentación de Qt y se explica en «Programando con Qt», de K. Dalheimer), Trolltech creó un nuevo sistema en el que los objetos pueden emitir señales que se pueden conectar a métodos declarados como «slots». Desde el punto de vista del programador de C++, solo es necesario saber ciertas cosas sobre este mecanismo: <itemizedlist>
<listitem><para>la declaración de una clase que use señales y slots debe contener la macro TQ_OBJECT al principio (sin punto y coma); también debe derivar de la clase <classname>QObject</classname> </para></listitem>
<listitem><para>la declaración de una clase que use señales y slots debe contener la macro TQ_OBJECT al principio (sin punto y coma); también debe derivar de la clase <classname>TQObject</classname> </para></listitem>
<listitem><para>se puede emitir una señal mediante la palabra clave «emit»; por ejemplo, «emit señal(parámetros);», desde dentro de cualquier función miembro de una clase que permita señales y slots </para></listitem>
<listitem><para>todas las señales usadas por las clases que no sean heredadas deben ser añadidas a la declaración de la clase mediante una sección «signals» </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>el compilador de metaobjetos «moc» debe ejecutarse con el archivo de cabecera para expandir las macros y generar la implementación (que no es necesario conocer). Los archivos de salida de «moc» también son compilados por el compilador de C++. </para></listitem>
</itemizedlist>
</para>
<para>Otra forma de usar señales sin derivar de <classname>QObject</classname> consiste en usar la clase <classname>QSignal</classname> (consulte la documentación de referencia para obtener más información y un ejemplo de uso). En lo sucesivo asumiremos que está derivando de <classname>QObject</classname>. </para>
<para>Otra forma de usar señales sin derivar de <classname>TQObject</classname> consiste en usar la clase <classname>QSignal</classname> (consulte la documentación de referencia para obtener más información y un ejemplo de uso). En lo sucesivo asumiremos que está derivando de <classname>TQObject</classname>. </para>
<para>De este modo, su clase será capaz de enviar señales a cualquier otro sitio y de proporcionar «slots» a los que se puedan conectar señales. Gracias al uso de estas señales no tendrá que preocuparse de quién va a recibirlas: solo tiene que emitir la señal, y cualquier «slot» al que quiera conectarla reaccionará a la emisión. Los «slots» también pueden ser usados como métodos normales en la implementación. </para>
<para>Ahora, para conectar una señal a un «slot», tendrá que usar los métodos <methodname>connect()</methodname> proporcionados por la clase <classname>QObject</classname> o, cuando estén disponibles, otros métodos especiales proporcionados por diversos objetos para establecer la conexión con ciertas señales. </para>
<para>Ahora, para conectar una señal a un «slot», tendrá que usar los métodos <methodname>connect()</methodname> proporcionados por la clase <classname>TQObject</classname> o, cuando estén disponibles, otros métodos especiales proporcionados por diversos objetos para establecer la conexión con ciertas señales. </para>
<sect3 id="c1s2s4s1">
<title>Ejemplo de uso</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Como puede comprobar, la única adición para dar más interacción al botón consiste en usar un método <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));</methodname> es todo cuanto tiene que añadir. ¿Cuál es su significado? La declaración de la clase QObject dice lo siguiente sobre el método <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const QObject * emisor, const char * señal, const QObject * receptor, const char * miembro ) </methodname></para>
<para>Esto significa que debe especificar como primer parámetro un puntero de una instancia de la clase <classname>QObject</classname>, que es el emisor de la señal (lo que significa que puede emitir esta señal); a continuación debe especificar la señal que desea conectar. Los dos últimos parámetros son, en primer lugar, el objeto receptor que proporciona un «slot», y, finalmente, la función miembro de dicho objeto que va a actuar como «slot» (y que será ejecutada tras la emisión de la señal). </para>
<para>Como puede comprobar, la única adición para dar más interacción al botón consiste en usar un método <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));</methodname> es todo cuanto tiene que añadir. ¿Cuál es su significado? La declaración de la clase TQObject dice lo siguiente sobre el método <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const TQObject * emisor, const char * señal, const TQObject * receptor, const char * miembro ) </methodname></para>
<para>Esto significa que debe especificar como primer parámetro un puntero de una instancia de la clase <classname>TQObject</classname>, que es el emisor de la señal (lo que significa que puede emitir esta señal); a continuación debe especificar la señal que desea conectar. Los dos últimos parámetros son, en primer lugar, el objeto receptor que proporciona un «slot», y, finalmente, la función miembro de dicho objeto que va a actuar como «slot» (y que será ejecutada tras la emisión de la señal). </para>
<para>Mediante el uso de señales y «slots», los objetos de su programa pueden interactuar con otros fácilmente sin depender explícitamente del tipo de objeto receptor. Aprenderá más sobre el uso de este mecanismo para usos productivos en sucesivas secciones de este manual. También puede encontrar más información sobre el mecanismo de señales y «slots» en la <ulink url="developer.kde.org/documentation/library/libraryref.html">Guía de referencia de la biblioteca KDE</ulink> y la <ulink url="doc.trolltech.com">referencia en línea de Qt</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Vea que en primer lugar hemos cambiado de <classname>QApplication</classname> a <classname>TDEApplication </classname>. Además, hemos tenido que cambiar elmétodo <methodname>setMainWidget()</methodname> anteriormente usado por <methodname>setTopWidget</methodname>, que utiliza <classname>TDEApplication</classname> para establecer el «widget» principal. ¡Y ya está! Su primera aplicación de KDE ya está terminada. Ahora solo le falta indicarle al compilador la ruta de inclusión de KDE, y al enlazador que utilice la biblioteca tdecore mediante el parámetro -ltdecore. </para>
<para>Como ahora ya sabe qué suele proporcionar como mínimo la función <function>main()</function>, cómo se hace visible una aplicación y cómo permite la interacción entre usuario y objetos, seguiremos con el siguiente capítulo, donde nuestra primera aplicación se construirá con &tdevelop;. Ahí tambień podrá probar todo lo que se ha dicho hasta ahora y comprobar sus efectos. </para>
<para>Adicionalmente, hasta ahora ha consultado la documentación de referencia de Qt, especialmente las clases <classname>QApplication</classname>, <classname>QWidget</classname> y <classname>QObject</classname>, y la documentación de la biblioteca «tdecore» sobre la clase <classname>TDEApplication</classname>. El <ulink url="developer.kde.org/documentation/library/libraryref.html"> Manual d referencia de la biblioteca KDE</ulink> también contiene una completa descripción sobre cómo llamar a los constructores de <classname>QApplication</classname> y de <classname>TDEApplication</classname>, incluido el procesamiento de los argumentos pasados como parámetros en la línea de comando. </para>
<para>Adicionalmente, hasta ahora ha consultado la documentación de referencia de Qt, especialmente las clases <classname>QApplication</classname>, <classname>TQWidget</classname> y <classname>TQObject</classname>, y la documentación de la biblioteca «tdecore» sobre la clase <classname>TDEApplication</classname>. El <ulink url="developer.kde.org/documentation/library/libraryref.html"> Manual d referencia de la biblioteca KDE</ulink> también contiene una completa descripción sobre cómo llamar a los constructores de <classname>QApplication</classname> y de <classname>TDEApplication</classname>, incluido el procesamiento de los argumentos pasados como parámetros en la línea de comando. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // permitir que la vista pueda cambiar la barra de estado y el título
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Tampoco es necesario decir que la estabilidad es uno de los principales objetivos del diseño. Nadie puede evitar los errores, pero se puede conseguir bastante mediante objetivos diseñados inteligentemente y el amplio uso de diseños orientados a objetos. C++ hace que la programación sea un juego si sabe cómo explotar sus capacidades: herencia, ocultación de información y reusabilidad del código existente. </para>
<para>Cuando cree un proyecto KDE o Qt, siempre tendrá una vista que herede de QWidget, ya sea por herencia directa o porque el widget de la biblioteca que desea usar hereda de QWidget. De ahí que el asistente para aplicaciones haya construido una vista que es una instancia de una clase «aplicaciónView», que hereda de QWidget. </para>
<para>Cuando cree un proyecto KDE o Qt, siempre tendrá una vista que herede de TQWidget, ya sea por herencia directa o porque el widget de la biblioteca que desea usar hereda de TQWidget. De ahí que el asistente para aplicaciones haya construido una vista que es una instancia de una clase «aplicaciónView», que hereda de TQWidget. </para>
<para>Este capítulo describe cómo usar widgets de bibliotecas para crear vistas para aplicaciones de KDE o Qt que han sido generadas con &tdevelop;. Luego veremos las bibliotecas y qué tipo de vistas nos ofrecen. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>Si observa la primera página de la documentación en línea de Qt encontrará un enlace a «capturas de pantalla de los widgets», donde podrá ver cómo son los widgets que contiene Qt. Estos widgets están listos para usar y pueden ser combinados entre sí para formar widgets más complicados que le permitirán crear vistas y diálogos para su aplicación. A continuación describiremos algunos de estos widgets que le resultarán de utilidad para crear vistas de aplicaciones, pero recuerde que las bibliotecas de KDE suelen contener otros widgets para el mismo propósito. Veremos esto en la próxima sección. </para>
<para>A continuación le damos una lista de pistas sobre para qué propósito puede usar cada componente de Qt: <orderedlist>
<listitem><para>Si el área de su vista no es lo suficientemente amplia para mostrar todos sus datos, el usuario debería poder desplazarse por el documento con barras situadas a la derecha y en la parte inferior de la vista. Para ello, Qt proporciona la clase <classname>QScrollView</classname>, que ofrece un área hija que se puede desplazar. Como se ha explicado, puede derivar su propio widget de la clase <classname>QScrollView</classname> o usar una instancia de ella para gestionar el widget que contendrá la vista de su documento. </para></listitem>
<listitem><para>Para crear una vista propia que se pueda deslazar, derive su widget de vista de la clase <classname>QWidget</classname> y añada un <classname>QScrollBar</classname> horizontal y otro vertical (esto es lo que hace, por ejemplo, el widget TDEHTMLView de KDE). </para></listitem>
<listitem><para>Para crear una vista propia que se pueda deslazar, derive su widget de vista de la clase <classname>TQWidget</classname> y añada un <classname>QScrollBar</classname> horizontal y otro vertical (esto es lo que hace, por ejemplo, el widget TDEHTMLView de KDE). </para></listitem>
<listitem><para>Para procesar texto, utilice <classname>QTextEdit</classname>. Esta clase proporciona un widget con un completo editor de texto que es capaz de cortar, copiar y pegar texto, y está gestionado por una vista que se puede desplazar. </para></listitem>
<listitem><para>Use <classname>QTable</classname> para mostrar datos organizados en forma de tabla. Como <classname>QTable</classname> también está dotada de barras de desplazamiento, ofrece una buena solución para aplicaciones de cálculo de tablas. </para></listitem>
<listitem><para>Para mostrar dos widgets diferentes o dos instancias del mismo widget a la vez, utilice <classname>QSplitter</classname>. Esta clase le permite distribuir las vistas mediante divisores horizontales o verticales. KMail es un buen ejemplo de la apariencia de esta clase (la vista principal está dividida verticalmente por un «splitter» o divisor, y la ventana de la derecha también está dividida horizontalmente). </para></listitem>
@ -653,7 +653,7 @@ return a.exec();
<title>Configuración de los accesos rápidos de teclado</title>
<para>Los accesos rápidos de teclado son algo muy profesional que siempre debería añadir a sus aplicaciones. Son usados principalmente por usuarios avanzados que desean trabajar más rápido con sus aplicaciones. Para implementarlos, las bibliotecas de KDE ofrecen la clase <classname>TDEAction</classname>, que proporciona las teclas de acceso rápido y también brinda acceso a los aceleradores de teclado estándares configurados globalmente. </para>
<para>De forma predeterminada, las aplicaciones generadas con &tdevelop; solo utilizan accesos rápidos de teclado estándares, como «F1» para acceder a la ayuda en línea, «Ctrl+N» para «Nuevo archivo», etc. </para>
<para>Si su aplicación contiene gran número de aceleradores, debería hacer que se pudieran configurar desde el menú de «Opciones», ya sea combinados con la configuración de otras aplicaciones en un QWidget o bien de modo aislado. La biblioteca de KDE proporciona una clase <classname>KKeyChooser</classname> para usar en diálogos que contienen pestañas, para los que <classname>KKeyDialog</classname> proporciona un diálogo de configuración de teclas listo para usar. </para>
<para>Si su aplicación contiene gran número de aceleradores, debería hacer que se pudieran configurar desde el menú de «Opciones», ya sea combinados con la configuración de otras aplicaciones en un TQWidget o bien de modo aislado. La biblioteca de KDE proporciona una clase <classname>KKeyChooser</classname> para usar en diálogos que contienen pestañas, para los que <classname>KKeyDialog</classname> proporciona un diálogo de configuración de teclas listo para usar. </para>
</sect1>
</chapter>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>El botón <guibutton>¿Qué es esto?</guibutton></title>
<para>El botón <guibutton>¿Qué es esto?</guibutton> proporciona ventanas de ayuda con la idea de que el usuario necesita ayuda sobre cierto widget de la vista activa o de un elemento de una barra de herramientas. Se suele colocar en la misma barra de herramientas y se activa cuando el usuario pulsa su botón. El cursor cambia a una flecha con un signo de interrogación (con el mismo aspecto que muestra el botón). A partir de ese momento, el usuario puede pulsar sobre cualquier widget visible y obtener una ventana de ayuda. Como ejercicio, pruebe el comportamiento del botón <guibutton>¿Qué es esto?</guibutton> de &tdevelop;. </para>
<para>Para añadir ayudas «¿Qué es esto?» a cualquiera de sus widgets, utilice el método estático <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;texto)</methodname> </para>
<para>Para añadir ayudas «¿Qué es esto?» a cualquiera de sus widgets, utilice el método estático <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;texto)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Conversión rápida de <classname>QImage</classname> a <classname>QPixmap</classname>. </para>
<para>Conversión rápida de <classname>TQImage</classname> a <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>El model de gráficos de bajo nivel de Qt se basa en las capacidades proporcionadas por X11 y otros sitemas de ventanas para los que existen versiones de Qt. Pero también extiende las opciones mencionadas implementando características adicionales como transformaciones de tamaño arbitrario para textos y mapas de pixels. </para>
<para>La clase central para la realización de gráficos 2D en Qt es <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Puede dibujar en un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Hay implementados tres dispositivos de pintura posibles: uno es <ulink url="kdeapi:qt/QWidget">QWidget</ulink>, que representa un widget de la pantalla. El segundo es <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> que representa una impresora y produce salida PostScript. El tercero es la clase <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, que almacena comandos de dibujo y puede guardarlos en el disco para reproducirlos posteriormente. Un formato de almacenamiento posible para los comandos de dibujo es el estándar de W3C denominado SVG. </para>
<para>La clase central para la realización de gráficos 2D en Qt es <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Puede dibujar en un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Hay implementados tres dispositivos de pintura posibles: uno es <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink>, que representa un widget de la pantalla. El segundo es <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> que representa una impresora y produce salida PostScript. El tercero es la clase <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, que almacena comandos de dibujo y puede guardarlos en el disco para reproducirlos posteriormente. Un formato de almacenamiento posible para los comandos de dibujo es el estándar de W3C denominado SVG. </para>
<para>Por lo tanto, es posible reutilizar el código de procesado que se utiliza para mostrar un widget en su impresión posterior, con las mismas características soportadas. Obviamente, en la práctica, el código se utiliza en un contexto ligeramente distinto. El dibujo en un widget se realiza casi exclusivamente en el método paintEvent() de la clase del widget. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle) - Crea una brocha negra con uno de los siguientes patrones mostrados a continuación.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle) - Crea una brocha de color con uno de los patrones mostrados a continuación.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle) - Crea una brocha de color con uno de los patrones mostrados a continuación.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) - Crea una brocha de color con el patrón personalizado que se proporcione como segundo parámetro.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) - Crea una brocha de color con el patrón personalizado que se proporcione como segundo parámetro.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Color</title>
<para>Los colores juegan un papel tanto al ajustar curvas como al rellenar figuras. En Qt, los colores están representados por la clase <ulink url="kdeapi:qt/QColor">QColor</ulink>. Qt no soporta características gráficas avanzadas como perfiles de color ICC y corrección de color. Los colores se construyen normalmente especificando sus componentes rojo, verde y azul, siguiendo el modelo RGB que utilizan los monitores para dibujar los pixels. </para>
<para>Los colores juegan un papel tanto al ajustar curvas como al rellenar figuras. En Qt, los colores están representados por la clase <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. Qt no soporta características gráficas avanzadas como perfiles de color ICC y corrección de color. Los colores se construyen normalmente especificando sus componentes rojo, verde y azul, siguiendo el modelo RGB que utilizan los monitores para dibujar los pixels. </para>
<para>También es posible utilizar tono, saturación y valor. Esta representación (HSV) es la que se utiliza en el diálogo de color de Gtk, por ejemplo en GIMP. En este caso, el tono corresponde al ángulo en la rueda de color, mientras que la saturación corresponde a la distancia desde el centro de círuclo. El valor se puede elegir con un selector independiente. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> corresponde directamente a los objetos de mapas de pixels de X11. Los mapas de pixels son objetos del lado del servidor y pueden (en la mayoría de las tarjetas gráficas modernas) ser almacenadas directamente en la memoria de la tarjeta. Esto hace que sean <emphasis>muy</emphasis> eficientes para tranferir mapas de pixels a la pantalla. Los mapas de pixels también funcionan como los equivales de fuera de la pantalla de los widgets; la clase QPixmap es una subclase de QPaintDevice, por lo que es posible dibujarla con un QPainter. Las operaciones elementales de dibujo normalmente se ven aceleradas por los adaptadores gráficos modernos. Por lo tanto, una conducta muy habitual es la de utilizar mapas de pixels para trabajar con doble buffer. Esto significa, en vez de dibujar directamente sobre un widget, que sea crea un objeto de mapa de pixels temporal y se utiliza la función <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> para tranferir el mapa de pixels al widget. En casos de redibujados complejos, esto ayuda a evitar el efecto de parpadeo. </para>
<para>Por contra, el objeto <ulink url="kdeapi:qt/QImage">QImage</ulink> permanece en el lado del cliente. Su ventaja está en que proporciona acceso directo a los pixels de la imagen. Esto lo hace útil para la manipulación de imágenes, y operaciones como la carga y almacenamiento en disco (el método load() de QPixmap utiliza QImage en un paso intermedio). Por otro lado, dibujar una imagen en un widget es una operación con un consumo de recursos relativamente alto, ya que implica una transferencia al servidor X, lo que puede llevar algún tiempo, especialmente en imágenes grandes y servidores remotos. Dependiendo de la profundidad de color, la conversión de QImage a QPixmap puede requerir también un proceso de reducción del número de colores. </para>
<para>Por contra, el objeto <ulink url="kdeapi:qt/TQImage">TQImage</ulink> permanece en el lado del cliente. Su ventaja está en que proporciona acceso directo a los pixels de la imagen. Esto lo hace útil para la manipulación de imágenes, y operaciones como la carga y almacenamiento en disco (el método load() de QPixmap utiliza TQImage en un paso intermedio). Por otro lado, dibujar una imagen en un widget es una operación con un consumo de recursos relativamente alto, ya que implica una transferencia al servidor X, lo que puede llevar algún tiempo, especialmente en imágenes grandes y servidores remotos. Dependiendo de la profundidad de color, la conversión de TQImage a QPixmap puede requerir también un proceso de reducción del número de colores. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Dibujo de texto</title>
<para>Es posible dibujar texto con una de las variantes sobrecargadas del método QPainter::drawText(). De esta forma se dibuja una QString en un punto o en un rectángulo dado, utilizando la fuente establecida por QPainter::setFont(). También hay un parámetro que admite una combinación OR de algunos parámetros obtenidos de las enumeraciones <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> y <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>Es posible dibujar texto con una de las variantes sobrecargadas del método QPainter::drawText(). De esta forma se dibuja una TQString en un punto o en un rectángulo dado, utilizando la fuente establecida por QPainter::setFont(). También hay un parámetro que admite una combinación OR de algunos parámetros obtenidos de las enumeraciones <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> y <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>A partir de la versión 3.0, Qt se encarga completamente de la disposición del texto incluso en los idiomas escritos de derecha a izquierda. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Además de las entradas usuales, este ejemplo demuestra cómo declarar que un servicio posee algunas propiedades. Cada definición de propiedad corresponde a un grupo <literal>[PropertyDef::name]</literal> en el archivo de configuración. En este grupo, la entrada <literal>Type</literal> declara el tipo de la propiedad. Los tipos posibles son cualquier cosa que se pueda almacenar en un <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Una vez que disponga de un objeto <classname>KService</classname>, solo necesita cargar la biblioteca y obtener un puntero a su objeto fábrica: </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "El inicio de kioserver ha fallado con el mensaje " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>En el ejemplo propuesto, el servicio se inició «por nombre»; es decir, el primer argumento de <function>TDEApplication::startServiceByName()</function> es el nombre que aparece en la línea <literal>Name</literal> del archivo «desktop». Una alternativa consiste en usar <function>TDEApplication::startServiceByDesktopName()</function>, que toma el nombre del archivo «desktop» como argumento (en este caso, <literal>«tdeio_uiserver.desktop»</literal>). </para>
<para>Todas estas llamadas tienen una lista de URL como segundo parámetro, que se proporciona al servicio en la línea de comando. El tercer argumento es un puntero a una clase <classname>QString</classname>. Si el inicio del servicio falla, este argumento contendrá un mensaje de error traducido. </para>
<para>Todas estas llamadas tienen una lista de URL como segundo parámetro, que se proporciona al servicio en la línea de comando. El tercer argumento es un puntero a una clase <classname>TQString</classname>. Si el inicio del servicio falla, este argumento contendrá un mensaje de error traducido. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Por supuesto, incluso KMimeMagic sólo es capaz de determinar un tipo de archivo a partir del contenido de un archivo local. Para los archivos remotos existe otra posibilidad adicional: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "No se puede encontrar el tipo" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Obtener un icono para una URL. Esto busca el tipo de URL y devuelve el icono asociado. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Ejecutar una URL. Esto busca el tipo de URL y ejecuta el programa preferente del usuario que está asociado a este tipo. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Renombra un archivo. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Crea un enlace simbólico. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(origen, destino);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// cargar el archivo de nombre tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Última modificación: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Crea un enlace simbólico.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText miWidget <quote>nuevo texto</quote> </para>
<para>Asume que está dentro de un archivo de &kommander; y que tiene acceso al especial @pid, que contiene el id. del proceso. De hecho, es más fácil reemplazar <quote>kmdr-executor-@pid</quote> por @dcopid. Sin embargo, puede usar esta sintaxis (obviamente, sin los especiales) desde la línea de órdenes o desde cualquier guión exteno para alterar la ventana de &kommander;. </para>
<para>Debido a que &kommander; no tiene un analizador completo en su estado alfa, si quiere usar el &DCOP; interno mucho más rápido para la ventana de otra aplicación (&DCOP; en consola es muy lento) es más complicado porque debe dar mucha información, entre la que se incluye un prototipo para la llamada. La llamada de lo de arriba sería así: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>En el momento de escribir este manual, debería evitar anidar llamadas &DCOP; dentro de las estructuras de lenguajes de guiones (como <application>bash</application>), lo que significa que debería usar métodos de llamada desde consola. <emphasis>Si usa &DCOP; interno, todos los especiales de &kommander; se ejecutarán primero y luego se ejecutará el guión.</emphasis> </para>
<para>Hay una forma simplificada de usar &DCOP; desde dentro de &kommander;, usando la sintaxis del objeto. Digamos que quiere cambiar el texto de un widget que se llama @EditLine1. Tendría esta pinta: </para>
<para>@EditLine1.changeWidgetText(Texto nuevo) </para>
@ -29,15 +29,15 @@
<title>&DCOP; para variables globales</title>
<variablelist>
<varlistentry>
<term>global(QString nombreVariable)</term>
<term>global(TQString nombreVariable)</term>
<listitem>
<para>Devuelve el valor de la variable global indicada. Cuando un guión se ejecuta desde la ventana de &kommander; cualquier variable (no global) definida en el guión dejará de existir una vez completado el guión y, por tanto, no estará disponible para otros procesos de guiones ni en nuevos ejemplares del proceso llamante. El <quote>ámbito</quote> global de la variable significa que existirá para cualquier proceso de la ventana hasta que se cierre la misma. Puede cambiar estas variables en cualquier momento con una nueva llamada a <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString nombreVariable, QString valor)</term>
<term>setGlobal(TQString nombreVariable, TQString valor)</term>
<listitem>
<para>Crea una variable global en el proceso de la ventana y le asigna un valor. Este valor se puede recuperar o volver a definir con global(QString nombreVariable). </para>
<para>Crea una variable global en el proceso de la ventana y le asigna un valor. Este valor se puede recuperar o volver a definir con global(TQString nombreVariable). </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString text)</term>
<term>changeWidgetText(TQString text)</term>
<listitem>
<para>Debería cambiar el nombre por setWidgetText y probablemente este nombre quede obsoleto. Elimina el texto que se muestra en el widget y lo reemplaza con el texto que se suministra. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString text)</term>
<term>setAssociatedText(TQString text)</term>
<listitem>
<para>Define la cadena predefinida de texto de &kommander;. Típicamente se define como <quote>@widgetText</quote> para mostrar lo que se introduzca en el widget. Posiblemente no lo necesite, pero ahí está por si acaso. Se aplica a todos los widgets que tengan datos. </para>
</listitem>
@ -78,7 +78,7 @@
<title>&DCOP; para widgets de listas de selección y de listas de selección múltiple</title>
<variablelist>
<varlistentry>
<term>addListItem(QString item, int index)</term>
<term>addListItem(TQString item, int index)</term>
<listitem>
<para>Añade un elemento a un widget de lista de selección en el índice (index) especificado. El índice de la lista comienza en el cero. Para añadirlo al final de la lista, use -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString item)</term>
<term>addUniqueItem(TQString item)</term>
<listitem>
<para>addUniqueItem añade un elemento (item) al final de la lista sólo si es único. </para>
</listitem>
@ -126,7 +126,7 @@
<title>&DCOP; para widgets de casilla de verificación y botones de radio</title>
<variablelist>
<varlistentry>
<term>setChecked(QString widgetName, bool checked)</term>
<term>setChecked(TQString widgetName, bool checked)</term>
<listitem>
<para>Marca/quita la marca de widgets de casilla de verificación y botones de radio. </para>
</listitem>
@ -138,7 +138,7 @@
<title>&DCOP; para widgets de solapa</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString widgetName, int index)</term>
<term>setCurrentTab(TQString widgetName, int index)</term>
<listitem>
<para>Selecciona la solapa por index (índice) para widgets de solapa. El índice comienza en el 0. </para>
</listitem>

@ -4012,5 +4012,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Ampliación:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -7312,8 +7312,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"La herencia múltiple requiere que el TQObject derivado sea el primero y "
"único en la lista de clase base."
"La herencia múltiple requiere que el TQObject derivado sea el primero y único "
"en la lista de clase base."
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -23835,9 +23835,9 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Introduzca la clase base desde la que se derivará su nueva clase. Si ha "
"marcado «Generar clase hija de TQWidget», la nueva clase derivará de "
"TQWidget. Si no se elige ninguna, la nueva clase no tendrá una clase padre. "
"También puede utilizar aquí clases de plantilla (como BaseClass<int, int>)"
"marcado «Generar clase hija de TQWidget», la nueva clase derivará de TQWidget. "
"Si no se elige ninguna, la nueva clase no tendrá una clase padre. También "
"puede utilizar aquí clases de plantilla (como BaseClass<int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -29506,19 +29506,19 @@ msgstr "Confianza en certificado SSL"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Error compilando la expresión regular."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Estilo Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Estilo Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Introduzca la clase base desde la que se derivará su nueva clase. Si ha "
#~ "marcado «Generar clase hija de QWidget», la nueva clase derivará de "
#~ "QWidget. Si no se elige ninguna, la nueva clase no tendrá una clase "
#~ "marcado «Generar clase hija de TQWidget», la nueva clase derivará de "
#~ "TQWidget. Si no se elige ninguna, la nueva clase no tendrá una clase "
#~ "padre. También puede utilizar aquí clases de plantilla (como "
#~ "BaseClass<int, int>)"

@ -465,7 +465,7 @@ näiteks <command>grep</command>.</synopsis>
<term><userinput>(?!MUSTER)</userinput> (negatiivne ettevaade)</term>
<listitem><para>Negatiivne ettevaade ei näita sobivust, kui otsitavale stringile järgnev osa ei vasta <emphasis>MUSTRILE</emphasis>.</para>
<para>Avaldisega <userinput>const \w+\b(?!\s*&amp;)</userinput> sobib <quote>const char</quote> in the string <quote>const char* foo</quote>, aga mitte <quote>const QString</quote> stringis <quote>const QString&amp; bar</quote>, sest <quote>&amp;</quote> sobib negatiivse ettevaatava eelduse mustriga.</para>
<para>Avaldisega <userinput>const \w+\b(?!\s*&amp;)</userinput> sobib <quote>const char</quote> in the string <quote>const char* foo</quote>, aga mitte <quote>const TQString</quote> stringis <quote>const TQString&amp; bar</quote>, sest <quote>&amp;</quote> sobib negatiivse ettevaatava eelduse mustriga.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = KDE käivitamine
<para>Enne seda, kui sinu rakendus alustab arvutikurnamist või pluginate laadimist &etc;, kutsu &ksplash; nii välja:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Kui soovid näidata teadet ikooniga või ilma, kasuta</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Pluginaklassid peavad pakkuma <literal>staatilise</literal> funktsiooni <function>names</function>, mis tagastab nimede nimekirja, mida see saab välja kutsuda.</para></listitem>
<listitem><para>Kui pluginat saab seadistada juhtimismoodulis, peab see seadistamiseks pakkuma <literal>ThemeEngineClass</literal>-põhise klassi.</para></listitem>
<listitem><para>Pluginaklassid peavad tühistama vähemalt ühe virtuaalsetest funktsioonidest <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> ja <function>slotUpdateSteps</function>, et see oleks kasutatav.</para></listitem>
<listitem><para>Konstruktor peab olema kujul <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal>, et seda saaks kasutada koos klassiga <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Konstruktor peab olema kujul <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal>, et seda saaks kasutada koos klassiga <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>Viimane nõue võib tunduda keerukana, kuid hiljem näeme, et üheainsa rea lisamisega lähtefailidesse võib seda enamasti ignoreerida.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analüüsime nüüd seda listingut. Klass <classname>Theme2k</classname> rahuldab nimekonventsiooni ja tema päritolu on <classname>ThemeEngine</classname>. Ta pakub <methodname>Theme2k::names()</methodname> ja tal on konstruktor, mis võtab soovitavad parameetrid <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> ning pakub ka lihtsa meetodi <methodname>Theme2k::slotSetText()</methodname>. Hetkel ei ole mõtet pead vaevata klassiga <classname>RotWidget</classname>. See on väike element, mis pakub kasutajale veidi silmailu. Meie plugin on äärmiselt lihtne ega näita mingeid ikoone või edenemisriba. Kui soovid ikoone näidata, tühista funktsioon <function>slotSetPixmap</function>. Sarnased funktsioonid on olemas edenemisriba vahemikule (<function>slotUpdateSteps</function>) ja käesoleva sammu kasvamisele (<function>slotUpdateProgress</function>). </para>
<para>Analüüsime nüüd seda listingut. Klass <classname>Theme2k</classname> rahuldab nimekonventsiooni ja tema päritolu on <classname>ThemeEngine</classname>. Ta pakub <methodname>Theme2k::names()</methodname> ja tal on konstruktor, mis võtab soovitavad parameetrid <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> ning pakub ka lihtsa meetodi <methodname>Theme2k::slotSetText()</methodname>. Hetkel ei ole mõtet pead vaevata klassiga <classname>RotWidget</classname>. See on väike element, mis pakub kasutajale veidi silmailu. Meie plugin on äärmiselt lihtne ega näita mingeid ikoone või edenemisriba. Kui soovid ikoone näidata, tühista funktsioon <function>slotSetPixmap</function>. Sarnased funktsioonid on olemas edenemisriba vahemikule (<function>slotUpdateSteps</function>) ja käesoleva sammu kasvamisele (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Plugina teostus</title>
@ -686,7 +686,7 @@ private:
<para>Makro <constant>K_EXPORT_COMPONENT_FACTORY</constant> on deklareeritud failis <filename>kgenericfactory.h</filename>. Edasi konstruktori kallale. Kuna see on väga lihtne plugin, on ka konstruktor lihtne ja selge.</para>
<example>
<title>Plugina konstruktor</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP funktsioonid</title>
<para>&kstars;i <abbrev>DCOP</abbrev> kiides kasutab järgmisi funktsioone: <itemizedlist>
<listitem><para><function> lookTowards( const QString suund )</function>: tsentreerib vaate argumendiga määratud punkti. Selleks võib olla suvalise taevakeha nimi või mõni järgmistest sõnadest või lühenditest: zenith (või z) seniidi tähistusena, north (n) põhjakaare, northeast (ne) kirde, east (e) ida, southeast (se) kagu, south (s), southwest (sw) edela, west (w) lääne ja northwest (nw) loode tähistusena. </para></listitem>
<listitem><para><function> lookTowards( const TQString suund )</function>: tsentreerib vaate argumendiga määratud punkti. Selleks võib olla suvalise taevakeha nimi või mõni järgmistest sõnadest või lühenditest: zenith (või z) seniidi tähistusena, north (n) põhjakaare, northeast (ne) kirde, east (e) ida, southeast (se) kagu, south (s), southwest (sw) edela, west (w) lääne ja northwest (nw) loode tähistusena. </para></listitem>
<listitem><para><function> setRaDec( double OT, double kääne )</function>: tsentreerib vaate määratud ekvaatorilistele koordinaatidele. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: paus t sekundit enne järgneva skriptikäsu rakendamist. </para></listitem>
<listitem><para><function> waitForKey( const QString klahv )</function>: skripti rakendamine peatatakse, kuni kasutaja vajutab määratud klahvi. Praegu ei saa määrata klahvikombinatsioone (näiteks <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>), vaid ainult üksikklahve. Tühikuklahvi jaoks tuleb kirjutada <quote>space</quote>. </para></listitem>
<listitem><para><function> waitForKey( const TQString klahv )</function>: skripti rakendamine peatatakse, kuni kasutaja vajutab määratud klahvi. Praegu ei saa määrata klahvikombinatsioone (näiteks <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>), vaid ainult üksikklahve. Tühikuklahvi jaoks tuleb kirjutada <quote>space</quote>. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: jälgimisrežiimi näitamise lülitamine. </para></listitem>
<listitem><para><function> changeViewOption( const QString võimalus, const QString väärtus )</function>: vaatevõimaluse määramine. Kasutada saab kümneid võimalusi, sisuliselt kõike, mida saab seadistada &kstars;i <guilabel>vaateseadistuste aknas</guilabel>. Esimene argument ongi võimalus (vastav nimi võetakse seadistustefailist <filename>kstarsrc</filename>), teine soovitud väärtus. Argumentide parser on püütud teha võimalikult <quote>lollikindel</quote>, nii et kui kirjutad midagi kogemata valesti, siis see lihtsalt ei rakendu. </para></listitem>
<listitem><para><function> changeViewOption( const TQString võimalus, const TQString väärtus )</function>: vaatevõimaluse määramine. Kasutada saab kümneid võimalusi, sisuliselt kõike, mida saab seadistada &kstars;i <guilabel>vaateseadistuste aknas</guilabel>. Esimene argument ongi võimalus (vastav nimi võetakse seadistustefailist <filename>kstarsrc</filename>), teine soovitud väärtus. Argumentide parser on püütud teha võimalikult <quote>lollikindel</quote>, nii et kui kirjutad midagi kogemata valesti, siis see lihtsalt ei rakendu. </para></listitem>
<listitem><para><function> setGeoLocation( const QString linn, const QString provints/maakond, const QString riik )</function>: võimalus määrata vaatluskohaks mingi konkreetne linn. Kui argumendis määratud linna andmebaasist ei leita, ei tee see käsk midagi. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString linn, const TQString provints/maakond, const TQString riik )</function>: võimalus määrata vaatluskohaks mingi konkreetne linn. Kui argumendis määratud linna andmebaasist ei leita, ei tee see käsk midagi. </para></listitem>
<listitem><para><function> stop()</function> [clock]: seiskab simulatsioonikella. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Seadmete üldised funktsioonid: seadmete loomise/sulgemise funktsioonid jne.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString seadmeNimi, bool useLocal)</function> : INDI-teenuse loomine kohalikuna või serverina.</para></listitem>
<listitem><para><function>shutdownINDI (QString seadmeNimi)</function> : INDI-teenuse lõpetamine.</para></listitem>
<listitem><para><function>switchINDI(QString seadmeNimi, bool turnOn)</function> : INDI-seadme ühendamine või lahutamine.</para></listitem>
<listitem><para><function>setINDIPort(QString seadmeNimi, QString port)</function> : seadme ühenduse pordi määramine.</para></listitem>
<listitem><para><function>setINDIAction(QString seadmeNimi, QString toiming)</function> : INDI-toimingu aktiveerimine. Toiming võib olla <emphasis>lülitamisomaduse</emphasis> mis tahes <emphasis>element</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(QString seadmeNimi, QString toiming)</function> : paus skripti täitmises, kuni määratud toimingu <emphasis>omadus</emphasis> tagastatakse OK-staatusega.</para></listitem>
<listitem><para><function>startINDI (TQString seadmeNimi, bool useLocal)</function> : INDI-teenuse loomine kohalikuna või serverina.</para></listitem>
<listitem><para><function>shutdownINDI (TQString seadmeNimi)</function> : INDI-teenuse lõpetamine.</para></listitem>
<listitem><para><function>switchINDI(TQString seadmeNimi, bool turnOn)</function> : INDI-seadme ühendamine või lahutamine.</para></listitem>
<listitem><para><function>setINDIPort(TQString seadmeNimi, TQString port)</function> : seadme ühenduse pordi määramine.</para></listitem>
<listitem><para><function>setINDIAction(TQString seadmeNimi, TQString toiming)</function> : INDI-toimingu aktiveerimine. Toiming võib olla <emphasis>lülitamisomaduse</emphasis> mis tahes <emphasis>element</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(TQString seadmeNimi, TQString toiming)</function> : paus skripti täitmises, kuni määratud toimingu <emphasis>omadus</emphasis> tagastatakse OK-staatusega.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Teleskoobifunktsioonid: teleskoobi liikumist ja olekut kontrollivad funktsioonid.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString seadmeNimi, QString toiming)</function> : teleskoobi režiimi või toimingu määramine. Võimalikud valikud on SLEW, TRACK, SYNC, PARK ja ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString seadmeNimi, double otsetõus, double kääne)</function> : määrab teleskoobi JNow sihtkoordinaadid <emphasis>otsetõusule</emphasis> ja <emphasis>käändele</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString seadmeNimi, QString objektiNimi)</function> : määrab teleskoobi JNow sihtkoordinaadid <emphasis>objektiNime</emphasis> koordinaatidele. KStars otsib objekti nime oma andmebaasist ja hangib leidmise korral selle otsetõusu ja käände.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString seadmeNimi, double pikkuskraad, double laiuskraad)</function> : määrab teleskoobi geograafilise asukoha määratud pikkus- ja laiuskraadile. Pikkuskraadi arvestatakse Greenwichist (Suurbritannia) ida poole. Kuid kuigi läänepoolkera kohta kasutatakse sageli negatiivseid pikkuskraade, nõuab INDI, et pikkuskraad jääks 0 ja 360 vahele. See tähendab, et kui sul on kasutada negatiivne pikkuskraad, tuleb sellele liita 360 kraadi, et saada INDI-le sobilik väärtus. Näiteks Kanada linna Calgary koordinaadid &kstars;is on järgmised: pikkuskraad -114 04 58; laiuskraad 51 02 58. Nii on meie näite korral INDI pikkuskraad 360 - 114,093 = 245,917 kraadi.</para></listitem>
<listitem><para><function>setINDIUTC(QString seadmeNimi, QString UTCDateTime)</function> : määrab teleskoobi UTC kuupäeva ja kellaaja ISO-8601 vormingus. Vorminguks on YYYY-MM-DDTHH:MM:SS (nt. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString seadmeNimi, TQString toiming)</function> : teleskoobi režiimi või toimingu määramine. Võimalikud valikud on SLEW, TRACK, SYNC, PARK ja ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString seadmeNimi, double otsetõus, double kääne)</function> : määrab teleskoobi JNow sihtkoordinaadid <emphasis>otsetõusule</emphasis> ja <emphasis>käändele</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString seadmeNimi, TQString objektiNimi)</function> : määrab teleskoobi JNow sihtkoordinaadid <emphasis>objektiNime</emphasis> koordinaatidele. KStars otsib objekti nime oma andmebaasist ja hangib leidmise korral selle otsetõusu ja käände.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString seadmeNimi, double pikkuskraad, double laiuskraad)</function> : määrab teleskoobi geograafilise asukoha määratud pikkus- ja laiuskraadile. Pikkuskraadi arvestatakse Greenwichist (Suurbritannia) ida poole. Kuid kuigi läänepoolkera kohta kasutatakse sageli negatiivseid pikkuskraade, nõuab INDI, et pikkuskraad jääks 0 ja 360 vahele. See tähendab, et kui sul on kasutada negatiivne pikkuskraad, tuleb sellele liita 360 kraadi, et saada INDI-le sobilik väärtus. Näiteks Kanada linna Calgary koordinaadid &kstars;is on järgmised: pikkuskraad -114 04 58; laiuskraad 51 02 58. Nii on meie näite korral INDI pikkuskraad 360 - 114,093 = 245,917 kraadi.</para></listitem>
<listitem><para><function>setINDIUTC(TQString seadmeNimi, TQString UTCDateTime)</function> : määrab teleskoobi UTC kuupäeva ja kellaaja ISO-8601 vormingus. Vorminguks on YYYY-MM-DDTHH:MM:SS (nt. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Kaamera/CCD funktsioonid: kaamera/CCD omaduste ja oleku kontrollimise funktsioonid.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString seadmeNimi, int temp)</function> : määrab CCD-kiibi sihttemperatuuri Celsiuse kraadides.</para></listitem>
<listitem><para><function>setINDIFrameType(QString seadmeNimi, QString tüüp)</function> : määrab CCD kaadritüübi. Võimalikud valikud on FRAME_LIGHT, FRAME_BIAS, FRAME_DARK ja FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString seadmeNimi, int aegumine)</function> : käivitab CCD/kaamera särituse sekunditeks, mille määrab <emphasis>aegumine</emphasis>.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString seadmeNimi, int temp)</function> : määrab CCD-kiibi sihttemperatuuri Celsiuse kraadides.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString seadmeNimi, TQString tüüp)</function> : määrab CCD kaadritüübi. Võimalikud valikud on FRAME_LIGHT, FRAME_BIAS, FRAME_DARK ja FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString seadmeNimi, int aegumine)</function> : käivitab CCD/kaamera särituse sekunditeks, mille määrab <emphasis>aegumine</emphasis>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fokuseerija funktsioonid: fokuseerija liikumist ja olekut kontrollivad funktsioonid.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString seadmeNimi, QString toiming)</function> : määrab fokuseerija kiiruse. Võimalikud valikud on FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM ja FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString seadmeNimi, int aegumine)</function> : määrab sekundites iga järgneva startINDIFocus operatsiooni kestuse.</para></listitem>
<listitem><para><function>startINDIFocus(QString seadmeNimi, int fookuseSuund)</function> : liigutab fokuseerijat kas sissepoole (fookuseSuund = 0) või väljapoole (fookuseSuund = 1). Operatsiooni kiiruse ja kestuse saab määrata funktsioonidega <function>setINDIFocusSpeed()</function> ja <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString seadmeNimi, TQString toiming)</function> : määrab fokuseerija kiiruse. Võimalikud valikud on FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM ja FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString seadmeNimi, int aegumine)</function> : määrab sekundites iga järgneva startINDIFocus operatsiooni kestuse.</para></listitem>
<listitem><para><function>startINDIFocus(TQString seadmeNimi, int fookuseSuund)</function> : liigutab fokuseerijat kas sissepoole (fookuseSuund = 0) või väljapoole (fookuseSuund = 1). Operatsiooni kiiruse ja kestuse saab määrata funktsioonidega <function>setINDIFocusSpeed()</function> ja <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Filtrifunktsioonid: filtri positsiooni kontrollivad funktsioonid.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString seadmeNimi, int filtri_number)</function>: annab filtrile positsiooni <varname>filtri_number</varname>. Viimaste aliaseid saab omistada dialoogis <guimenuitem>INDI seadistamine</guimenuitem>, mille saab avada menüüst <guimenu>Seadmed</guimenu> (nt. Filter 1 = punane, Filter 2 = roheline jne.).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString seadmeNimi, int filtri_number)</function>: annab filtrile positsiooni <varname>filtri_number</varname>. Viimaste aliaseid saab omistada dialoogis <guimenuitem>INDI seadistamine</guimenuitem>, mille saab avada menüüst <guimenu>Seadmed</guimenu> (nt. Filter 1 = punane, Filter 2 = roheline jne.).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Saadaolevate &DCOP;-liideste nimekirja õigete argumentide leidmiseks saab nii: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -1685,8 +1685,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>katkestab juba ajastatud häire.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1728,8 +1728,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>käivitab juba ajastatud häire.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1773,8 +1773,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>käivitab või katkestab juba ajastatud häire.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1824,43 +1824,43 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>uue häire ajastamine.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>, int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -1897,7 +1897,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Määrab näidatava teate taustavärvi. String võib olla kujul <quote>#RRGGBB</quote> (nagu tagastab <methodname>QColor::name()</methodname>), kus RR, GG ja BB on vastavalt punase, rohelise ja sinise kahekohalised kuueteistkümnendväärtused. String võib olla mõnel muul kujul, mida tunnustab <methodname>QColor::setNamedColor()</methodname>, näiteks X'i värvide andmebaasi nimi (&eg; <quote>red</quote> või <quote>steelblue</quote>). Kui string tühjaks jätta, kasutatakse parajasti vaikimisi kehtivat taustavärvi.</para>
<para>Määrab näidatava teate taustavärvi. String võib olla kujul <quote>#RRGGBB</quote> (nagu tagastab <methodname>TQColor::name()</methodname>), kus RR, GG ja BB on vastavalt punase, rohelise ja sinise kahekohalised kuueteistkümnendväärtused. String võib olla mõnel muul kujul, mida tunnustab <methodname>TQColor::setNamedColor()</methodname>, näiteks X'i värvide andmebaasi nimi (&eg; <quote>red</quote> või <quote>steelblue</quote>). Kui string tühjaks jätta, kasutatakse parajasti vaikimisi kehtivat taustavärvi.</para>
</listitem>
</varlistentry>
@ -1999,21 +1999,21 @@ continuously in the background and alarms are always enabled.</para>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -2021,15 +2021,15 @@ continuously in the background and alarms are always enabled.</para>
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2066,7 +2066,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Määrab näidatava faili taustavärvi. String võib olla kujul <quote>#RRGGBB</quote> (nagu tagastab <methodname>QColor::name()</methodname>), kus RR, GG ja BB on vastavalt punase, rohelise ja sinise kahekohalised kuueteistkümnendväärtused. String võib olla mõnel muul kujul, mida tunnustab <methodname>QColor::setNamedColor()</methodname>, näiteks X'i värvide andmebaasi nimi (&eg; <quote>red</quote> või <quote>steelblue</quote>). Kui string tühjaks jätta, kasutatakse parajasti vaikimisi kehtivat taustavärvi.</para>
<para>Määrab näidatava faili taustavärvi. String võib olla kujul <quote>#RRGGBB</quote> (nagu tagastab <methodname>TQColor::name()</methodname>), kus RR, GG ja BB on vastavalt punase, rohelise ja sinise kahekohalised kuueteistkümnendväärtused. String võib olla mõnel muul kujul, mida tunnustab <methodname>TQColor::setNamedColor()</methodname>, näiteks X'i värvide andmebaasi nimi (&eg; <quote>red</quote> või <quote>steelblue</quote>). Kui string tühjaks jätta, kasutatakse parajasti vaikimisi kehtivat taustavärvi.</para>
</listitem>
</varlistentry>
@ -2152,29 +2152,29 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>uue häire ajastamine, mis käivitab shellikäsu.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2276,41 +2276,41 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>uue häire ajastamine, mis saadab häire e-postitsi.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>subRepeatInterval</replaceable>,
int <replaceable>subRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
nt <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endTime</replaceable>)
const TQString&amp; <replaceable>endTime</replaceable>)
</synopsis>
<refsect2>
@ -2439,7 +2439,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>See avab <link linkend="alarm-edit-dlg">häire redigeerimise dialoogi</link>.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>sündmuseID</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>sündmuseID</replaceable>)
</synopsis>
<refsect2>
@ -2477,7 +2477,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>See avab <link linkend="alarm-edit-dlg">häire redigeerimise dialoogi</link> uue häire redigeerimiseks.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>mallinimi</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>mallinimi</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Trükitud: 2004-07-13 18:10
<refpurpose>Tagastab &karm;i versiooni.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Trükitud: 2004-07-13 18:10
<refpurpose>Sulgeb &karm;i.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Trükitud: 2004-07-13 18:10
<refpurpose>Kontrollib tipptaseme ülesande olemasolu.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString taskname)
<synopsis>TQString hastodo(TQString taskname)
</synopsis>
<refsect2>
<title>Parameetrid</title>
@ -786,7 +786,7 @@ Trükitud: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Kirjeldus</title>
<para><function>hastodo(QString taskname)</function> on &DCOP;-väljakutse, mis otsib etteantud nime. Leidmisel tagastatakse ülesannet tuvastav iCalendari UID. Mitteleidmisel tagastatakse tühi string. </para>
<para><function>hastodo(TQString taskname)</function> on &DCOP;-väljakutse, mis otsib etteantud nime. Leidmisel tagastatakse ülesannet tuvastav iCalendari UID. Mitteleidmisel tagastatakse tühi string. </para>
<para>Otsitakse iCalendari failis, mis on &karm;is parajasti avatud. Otsitakse läbi kõik ülesandepuud, mitte ainult tipptaseme ülesande. Kui nimega sobib enam kui üks ülesanne, tagastatakse esimesena leitu.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Trükitud: 2004-07-13 18:10
<refpurpose>Lisab uue ülesande.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString todoname)
<synopsis>TQString addtodo(TQString todoname)
</synopsis>
<refsect2>
<title>Parameetrid</title>
@ -817,7 +817,7 @@ Trükitud: 2004-07-13 18:10
<refsect1>
<title>Kirjeldus</title>
<para><function>addtodo(QString todoname)</function> on &DCOP;-väljakutse, mis lisab aktiivsesse faili uue tipptaseme ülesande. Tagastatakse uue ülesande UID. </para>
<para><function>addtodo(TQString todoname)</function> on &DCOP;-väljakutse, mis lisab aktiivsesse faili uue tipptaseme ülesande. Tagastatakse uue ülesande UID. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Näited</title>
<para>Klassi <classname>QString</classname> dokumentatsiooni näitamiseks:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Klassi <classname>TQString</classname> dokumentatsiooni näitamiseks:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>Meie programmi teine objekt on nupp ehk klassi <classname>QPushButton</classname> eksemplar. Kahest eksemplari loomiseks mõeldud konstruktorist kasutame teist: see aktsepteerib teksti, mis on nupu sisu ehk antud juhul tekstistring "Hello world!" Seejärel kutsume välja meetodi <methodname>resize()</methodname>, et muuta nupu suurust vastavalt selle sisule - nupp peab olema suurem, et kogu string oleks näha. </para>
<para>Aga meetod <methodname>show()</methodname>? Siin näed, et nagu enamiku vidinate korral, tugineb <classname>QPushButton</classname> üheleainsale pärilusele ehk nagu ütleb dokumentatsioon: Inherits <classname>QButton</classname>. Klõpsa lingile <classname>QButton</classname>. Nüüd näed veel õige mitut vidinat, mis tuginevad klassile <classname>QButton</classname>, mida me kasutame hiljem signaali/pesa mehhanismi selgitamisel. Igal juhul ei ole siin kirjas meetodit <methodname>show()</methodname>, mis tähendab, et ka selle peab tagama pärilus. Klass, mille järglane on <classname>QButton</classname>, kannab nime <classname>QWidget</classname>. Klõpsa taas lingile ja näed tervet rida meetodeid,mida pakub klass QWidget. Nende hulka kuulub ka meetod <methodname>show()</methodname>. Nüüd on võimalik mõista, mida meie näidises nupuga ette võetakse: <orderedlist>
<para>Aga meetod <methodname>show()</methodname>? Siin näed, et nagu enamiku vidinate korral, tugineb <classname>QPushButton</classname> üheleainsale pärilusele ehk nagu ütleb dokumentatsioon: Inherits <classname>QButton</classname>. Klõpsa lingile <classname>QButton</classname>. Nüüd näed veel õige mitut vidinat, mis tuginevad klassile <classname>QButton</classname>, mida me kasutame hiljem signaali/pesa mehhanismi selgitamisel. Igal juhul ei ole siin kirjas meetodit <methodname>show()</methodname>, mis tähendab, et ka selle peab tagama pärilus. Klass, mille järglane on <classname>QButton</classname>, kannab nime <classname>TQWidget</classname>. Klõpsa taas lingile ja näed tervet rida meetodeid,mida pakub klass TQWidget. Nende hulka kuulub ka meetod <methodname>show()</methodname>. Nüüd on võimalik mõista, mida meie näidises nupuga ette võetakse: <orderedlist>
<listitem><para>Luuakse <classname>QPushButton</classname> eksemplar, kasutades teist konstruktorit nupu teksti määramiseks</para></listitem>
<listitem><para>Muudetakse vidina suurust sisu mahutamiseks</para></listitem>
<listitem><para>Määratakse vidin <classname>QApplication</classname> eksemplari a põhividinaks</para></listitem>
<listitem><para>Antakse vidinale korraldus näidata ennast ekraanil, kutsudes välja meetodi <methodname>show()</methodname>, mis on klassi <classname>QWidget</classname> järglane</para></listitem>
<listitem><para>Antakse vidinale korraldus näidata ennast ekraanil, kutsudes välja meetodi <methodname>show()</methodname>, mis on klassi <classname>TQWidget</classname> järglane</para></listitem>
</orderedlist>
</para>
<para>Pärast meetodi <methodname>exec()</methodname> väljakutsumist on rakendus kasutajale nähtav: aken nupuga, millel on kiri "Hello world!" Märkus: GUI programmid käituvad mõnikord veidi teistmoodi protseduurrakendused. Peamiseks erinevuseks on asjaolu, et rakendus siseneb niinimetatud "põhisilmusesse". See tähendab, et programm peab ootama kasutaja tegevust ja seejärel sellele reageerima, samuti seda, et Qt rakenduse korral peab programm olema põhisilmuses, enne kui saab alustada sündmuste käsitlemist. Järgmises osas räägime lühidalt, mida see tähendab programmeerijale ja mida pakub Qt kasutaja sündmuste töötlemiseks. </para>
<note><para>Juba kogemustega kasutajatele: konstruktoris pole deklareeritud nupu eellast, seepärast on see tipptaseme vidin, mis töötab kohalikus silmuses, mistõttu ei pea ootama põhisilmust. Vaata klassi QWidget ja KDE teegi dokumentatsiooni.</para>
<note><para>Juba kogemustega kasutajatele: konstruktoris pole deklareeritud nupu eellast, seepärast on see tipptaseme vidin, mis töötab kohalikus silmuses, mistõttu ei pea ootama põhisilmust. Vaata klassi TQWidget ja KDE teegi dokumentatsiooni.</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Nüüd äratame oma rakenduse "ellu" kasutaja sündmusi töötlema asudes. Üldiselt on kasutajal kaks võimalust programmiga suhelda: hiir ja klaviatuur. Mõlemal juhul peab graafiline kasutajaliides pakkuma meetodeid, mis tuvastavad toimingud, ja meetodeid, mis neile toimingutele reageerides midagi ette võtavad. </para>
<para>X Window saadab kõik interaktsioonisündmused vastavale rakendusele. <classname>QApplication</classname> saadab need siis aktiivsele aknale klassina <classname>QEvent</classname>, misjärel vidinad peavad otsustama, mida nendega peale hakata. Vidin saab sündmuse ja töötleb meetodit <methodname>QWidget::event(QEvent*)</methodname>, mis otsustab, milline sündmus käivitati ja kuidas reageerida: niisiis on peamine sündmuste käsitleja <methodname>event()</methodname>. Nüüd suunab <methodname>event()</methodname> sündmuse niinimetatud sündmusefiltrisse, mis määrab, mis toimus ja mida sündmusega peale hakata. Kui ükski filter antud sündmusega ei tegele, kutsutakse välja spetsialiseeritud sündmuste käsitlejad. Need on järgmised: <itemizedlist>
<para>X Window saadab kõik interaktsioonisündmused vastavale rakendusele. <classname>QApplication</classname> saadab need siis aktiivsele aknale klassina <classname>QEvent</classname>, misjärel vidinad peavad otsustama, mida nendega peale hakata. Vidin saab sündmuse ja töötleb meetodit <methodname>TQWidget::event(QEvent*)</methodname>, mis otsustab, milline sündmus käivitati ja kuidas reageerida: niisiis on peamine sündmuste käsitleja <methodname>event()</methodname>. Nüüd suunab <methodname>event()</methodname> sündmuse niinimetatud sündmusefiltrisse, mis määrab, mis toimus ja mida sündmusega peale hakata. Kui ükski filter antud sündmusega ei tegele, kutsutakse välja spetsialiseeritud sündmuste käsitlejad. Need on järgmised: <itemizedlist>
<listitem><para>Klaviatuurisündmused - klahvid TAB ja Shift:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Pane tähele, et kõik sündmuse funktsioonid on virtuaalsed ja kaitstud. Seepärast saad taasteostada sündmusi, mida vajad omaenda vidinates, ja määrata, kuidas vidin peab reageerima. <classname>QWidget</classname> sisaldab ka mõningaid virtuaalseid meetodeid, mis võivad sinu programmis kasuks tulla. Nii või teisiti on äärmiselt tulus klassi <classname>QWidget</classname> hästi tundma õppida. </para>
<para>Pane tähele, et kõik sündmuse funktsioonid on virtuaalsed ja kaitstud. Seepärast saad taasteostada sündmusi, mida vajad omaenda vidinates, ja määrata, kuidas vidin peab reageerima. <classname>TQWidget</classname> sisaldab ka mõningaid virtuaalseid meetodeid, mis võivad sinu programmis kasuks tulla. Nii või teisiti on äärmiselt tulus klassi <classname>TQWidget</classname> hästi tundma õppida. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Objekti interaktsioon signaalide ja pesadega</title>
<para>Nüüd jõuame Qt tööriistakomplekti kõige suurema eelise juurde, milleks on signaalide/pesade mehhanism. See pakub väga käepärase ja tulusa lahenduse objektide interaktsioonile, mis X Window tööriistakomplektides lahendatakse tavaliselt tagasikutsete (callback) funktsioonidega. Et selline kommunikatsioon eeldab väga ranget programmeerimist ning muudab mõnikord kasutajaliidese loomise üpris keerukaks (seda tutvustab ka Qt dokumentatsioon ning selgitab põhjalikult K. Dalheimeri raamat 'Programming with Qt'), leiutas Trolltech uue süsteemi, milles objektid emiteerivad signaale, mida saab siduda pesadena (slot) deklareeritud meetoditega. C++ programmeerija peab sellest teadma põhimõtteliselt vaid mõnda asja: <itemizedlist>
<listitem><para>signaale/pesasid kasutava klassi deklaratsiooni alguses peab seisma makro TQ_OBJECT (ilma semikoolonita) ja see peab olema tuletatud klassist <classname>QObject</classname> </para></listitem>
<listitem><para>signaale/pesasid kasutava klassi deklaratsiooni alguses peab seisma makro TQ_OBJECT (ilma semikoolonita) ja see peab olema tuletatud klassist <classname>TQObject</classname> </para></listitem>
<listitem><para>signaali võib emiteerida võtmesõna emit, nt. emit signaal(parameetrid), mis tahes klassi liikmesfunktsioonist, mis võimaldab signaale/pesasid </para></listitem>
<listitem><para>kõik signaalid, mida kasutavad klassid, mis ei ole päritud, tuleb lisada klassi deklaratsiooni signaalide sektsiooni </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>metaobjekti kompilaator moc peab töötlema päisefaili, et laiendada makrod ja luua teostus (mida pole tingimata vaja teadagi). moc'i väljundfailid kompileerib samuti C++ kompilaator. </para></listitem>
</itemizedlist>
</para>
<para>Veel üks viis kasutada signaale ilma klassist <classname>QObject</classname> tuletamata näeb ette klassi <classname>QSignal</classname> kasutamist. Uuri dokumentatsioonist ise täpsemalt, kuidas seda kasutada. Järgnevalt eeldame, et tuletatud on klassist <classname>QObject</classname>. </para>
<para>Veel üks viis kasutada signaale ilma klassist <classname>TQObject</classname> tuletamata näeb ette klassi <classname>QSignal</classname> kasutamist. Uuri dokumentatsioonist ise täpsemalt, kuidas seda kasutada. Järgnevalt eeldame, et tuletatud on klassist <classname>TQObject</classname>. </para>
<para>Nii võib sinu klass saata kõikjale signaale ja pakkuda pesasid, millega signaalid saavad ühenduse luua. Signaale kasutades ei pruugi muretseda, kes neid saab: sa lihtsalt emiteerid signaali, millele reageerib see pesa, millega sa soovid signaali ühendada. Pesasid võib samas kasutada teostuse ajal tavaliste meetoditena. </para>
<para>Signaali ühendamiseks pesaga tuleb kasutada meetodit <methodname>connect()</methodname>, mida pakub <classname>QObject</classname>, või olemasolu korral spetsiaalseid meetodeid, mida objektid pakuvad ühenduse võimaldamiseks teatud signaalidega. </para>
<para>Signaali ühendamiseks pesaga tuleb kasutada meetodit <methodname>connect()</methodname>, mida pakub <classname>TQObject</classname>, või olemasolu korral spetsiaalseid meetodeid, mida objektid pakuvad ühenduse võimaldamiseks teatud signaalidega. </para>
<sect3 id="c1s2s4s1">
<title>Näidiskasutamine</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Nagu näed, saab üheainsa lisandusega anda nupule suurema interaktiivsuse. Selleks on vaja ainult lisada meetod <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>. Mida see tähendab? Klassi QObject deklaratsioon ütleb meetodi <methodname>connect()</methodname> kohta järgmist: </para>
<para><methodname>bool connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * member ) </methodname></para>
<para>See tähendab, et sul tuleb määrata <classname>QObject</classname> eksemplari viit, mis on signaali saatja, mis tähendab, et sa emiteerid selle signaali esimese parameetrina. Seejärel tuleb määrata signaal, millega soovid ühenduse luua. Viimased kaks parameetrit on vastuvõttev objekt, mis pakub pesa, ning sellele järgneb liikmesfunktsioon, mis ongi tegelik pesa, mis käivitatakse signaali emiteerimisel. </para>
<para>Nagu näed, saab üheainsa lisandusega anda nupule suurema interaktiivsuse. Selleks on vaja ainult lisada meetod <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>. Mida see tähendab? Klassi TQObject deklaratsioon ütleb meetodi <methodname>connect()</methodname> kohta järgmist: </para>
<para><methodname>bool connect ( const TQObject * sender, const char * signal, const TQObject * receiver, const char * member ) </methodname></para>
<para>See tähendab, et sul tuleb määrata <classname>TQObject</classname> eksemplari viit, mis on signaali saatja, mis tähendab, et sa emiteerid selle signaali esimese parameetrina. Seejärel tuleb määrata signaal, millega soovid ühenduse luua. Viimased kaks parameetrit on vastuvõttev objekt, mis pakub pesa, ning sellele järgneb liikmesfunktsioon, mis ongi tegelik pesa, mis käivitatakse signaali emiteerimisel. </para>
<para>Signaalide ja pesade abil saavad sinu programmi objektid üksteisega suhelda ilma vajaduseta otseselt sõltuda vastuvõtva objekti tüübist. Selle mehhanismi kasutamisest tuleb käsiraamatus veel pikemalt juttu. Rohkem infot signaalide ja pesade mehhanismi kohta leiab ka <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE teegi</ulink> ja <ulink url="doc.trolltech.com">Qt dokumentatsioonist</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Kõigepealt asendasime klassi <classname>QApplication</classname> klassiga <classname>TDEApplication</classname>. Seejärel pidime muutma varasema meetodi <methodname>setMainWidget()</methodname> meetodiks <methodname>setTopWidget</methodname>, mida <classname>TDEApplication</classname> kasutab põhividina määramiseks. Ja ongi kõik! Sinu esimene KDE rakendus on valmis - pead veel ainult kompilaatorile teatama KDE kaasamise asukohta ja linkuriga linkima teegi tdecore võtmega -ltdecore. </para>
<para>Nüüd, kus tead, mida funktsioon <function>main()</function> üldiselt pakub ja kuidas muuta rakendus nähtavaks ning võimaldada kasutaja ja objekti interaktsiooni, on aeg minna järgmise peatüki kallale, kus loome oma esimese rakenduse &tdevelop;iga. Samuti saab seal testida kõike, millest oleme juttu teinud, ning näha oma silmaga, mis kuidas toimib. </para>
<para>Usutavasti oled järginud juhiseid ning uurinud Qt dokumentatsiooni, eriti just klasside <classname>QApplication</classname>, <classname>QWidget</classname> ja <classname>QObject</classname> kohta, ning teegi tdecore dokumentatsiooni klassi <classname>TDEApplication</classname> kohta. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE teegi käsiraamat</ulink> sisaldab samuti põhjalikku kirjeldust konstruktorite <classname>QApplication</classname> ja <classname>TDEApplication</classname> väljakutsumise kohta, kaasa arvatud käsureaargumentide töötlemine. </para>
<para>Usutavasti oled järginud juhiseid ning uurinud Qt dokumentatsiooni, eriti just klasside <classname>QApplication</classname>, <classname>TQWidget</classname> ja <classname>TQObject</classname> kohta, ning teegi tdecore dokumentatsiooni klassi <classname>TDEApplication</classname> kohta. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE teegi käsiraamat</ulink> sisaldab samuti põhjalikku kirjeldust konstruktorite <classname>QApplication</classname> ja <classname>TDEApplication</classname> väljakutsumise kohta, kaasa arvatud käsureaargumentide töötlemine. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // allow the view to change the statusbar and caption
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Ja ei pruugi mainidagi, et kujunduse üks peamisi sihte on stabiilsus. Vigu ei ole muidugi võimalik kunagi täielikult vältida, kuid oskuslikult seatud kujunduseesmärkide ja objektorienteeritud disaini agara kasutamisega võib saavutada väga palju. C++ muudab programmeerimise lõbuks, kui oskad ära kasutada selle võimalusi: pärilus, info peitmine, juba olemasoleva koodi korduvkasutus. </para>
<para>KDE või Qt projekti luues peab sul alati olema vaade, mis on klassi QWidget järglane kas otsese päriluse kaudu või siis teegividina kaudu, mida soovid tarvitada. Seepärast konstrueerib juba Rakenduse nõustaja vaate, mis on klassi sinurakendusView eksemplar ja klassi QWidget järglane. </para>
<para>KDE või Qt projekti luues peab sul alati olema vaade, mis on klassi TQWidget järglane kas otsese päriluse kaudu või siis teegividina kaudu, mida soovid tarvitada. Seepärast konstrueerib juba Rakenduse nõustaja vaate, mis on klassi sinurakendusView eksemplar ja klassi TQWidget järglane. </para>
<para>See peatükk kirjeldabki, kuidas kasutada teegividinaid &tdevelop;is loodud KDE või Qt rakenduste vaadete loomiseks, seejärel aga vaatame teeke ja vaateid, mida nad pakuvad. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>Qt võrgudokumentatsiooni avaleheküljelt leiab lingi "Widget Screenshots", millele klõpsates saab näha, kuidas näevad välja Qt pakutavad vidinad. Neid saab otsekohe kasutada ning kombineerida keerukamate vidinate loomiseks, mille alusel luua rakenduste vaateid või dialooge. Järgnevalt vaatleme mõningaid vidinaid, mida saab edukalt ära kasutada rakenduste vaadete loomiseks, kuid tasub meeles pidada, et ka KDE teegid sisaldavad vidinaid, mida saab samaks otstarbeks pruukida. Neist tuleb juttu järgmises osas. </para>
<para>Anname mõned nõuanded, milliseid Qt komponente milleks kasutada: <orderedlist>
<listitem><para>Kui sinu vaade pole piisavalt suur kõigi andmete näitamiseks, peab kasutajal olema võimalus kerida dokumenti vaate vasakus ja alumises servas asuvate ribadega. Selleks pakub Qt klassi <classname>QScrollView</classname>, mis tekitab keritava alampiirkonna. Nagu juba mainitud, tuleb oma vidin muuta <classname>QScrollView</classname> järglaseks või kasutada eksemplari oma dokumendi vaatevidina haldamiseks. </para></listitem>
<listitem><para>Et luua ise kerimisvaade, muuda vidin View klassi <classname>QWidget</classname> järglaseks ja lisa püstine ja rõhtne <classname>QScrollBars</classname> (seda teeb teha KDE vidinaga TDEHTMLView). </para></listitem>
<listitem><para>Et luua ise kerimisvaade, muuda vidin View klassi <classname>TQWidget</classname> järglaseks ja lisa püstine ja rõhtne <classname>QScrollBars</classname> (seda teeb teha KDE vidinaga TDEHTMLView). </para></listitem>
<listitem><para>Tekstitöötluseks kasuta klassi <classname>QTextEdit</classname>. See pakub täieliku tekstiredaktori vidina, mis suudab juba teksti lõigata, kopeerida ja asetada ning mida haldab kerimisvaade. </para></listitem>
<listitem><para>Tabelisse paigutatud andmete esitamiseks kasuta klassi <classname>QTable</classname>. Et ka klassi <classname>QTable</classname> haldab kerimisvaade, sobib see hästi tabelitöötlusrakendustele. </para></listitem>
<listitem><para>Kahe erineva vidina või vidina eksemplari näitamiseks ühel ja samal ajal kasuta klassi <classname>QSplitter</classname>. See võimaldab paanida vaateid rõhtsate või püstiste eraldajate abil. Selle heaks näiteks on KMail: peavaade on eraldajaga jagatud vertikaalselt, parempoolne aken aga omakorda rõhtsalt. </para></listitem>
@ -653,7 +653,7 @@ return a.exec();
<title>Kiirklahvide seadistamine</title>
<para>Rakendusele annab märksa professionaalsema ilme, kui lisad sellele kiirklahvid. Neid tarvitavad küll peamiselt kogenumad kasutajad, kes soovivad rakenduses tavapärasest veelgi kiiremini töötada ega pelga selleks väikest vaeva kiirklahvide meeldejätmise nimel. Selleks pakuvad KDE teegid klassi <classname>TDEAction</classname>, mis pakub kiirklahve ja ligipääsu globaalselt seadistatud standardsetele kiirklahvidele. </para>
<para>Vaikimisi kasutavad &tdevelop;i genereeritud rakenduse raamistikud ainult standardseid kiirklahve, näiteks F1 abidokumendi avamiseks, Ctrl+N uue faili loomiseks jne. </para>
<para>Kui sinu rakenduses on hulk kiirklahve, tuleb need muuta seadistatavaks menüüsse Seadistused lisatava eraldi kirjega või vähemalt koos teiste rakenduste seadistustega dialoogis, mida pakub QWidget. KDE teek pakubki klassi <classname>KKeyChooser</classname> kaardidialoogide jaoks ning klassi <classname>KKeyDialog</classname> kiirklahvide seadistamise dialoogile. </para>
<para>Kui sinu rakenduses on hulk kiirklahve, tuleb need muuta seadistatavaks menüüsse Seadistused lisatava eraldi kirjega või vähemalt koos teiste rakenduste seadistustega dialoogis, mida pakub TQWidget. KDE teek pakubki klassi <classname>KKeyChooser</classname> kaardidialoogide jaoks ning klassi <classname>KKeyDialog</classname> kiirklahvide seadistamise dialoogile. </para>
</sect1>
</chapter>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title><guibutton>Mis see on?</guibutton> nupp</title>
<para>Nupp <guibutton>Mis see on?</guibutton> palub abiakna, mis näitab kasutajale soovi korral abi teatud vidina kohta töövaates või tööriistaribal. See asub tööriistaribal ja aktiveerub, kui kasutaja nupule klõpsab. Kursor võtab küsimärgiga noole kuju, sarnanedes sel moel nupu enda ikoonile. Kasutaja saab sellega klõpsata huvipakkuva vidina peale, mis avabki abiakna. Võid näiteks katsetada, mida teeb nupp <guibutton>Mis see on?</guibutton> &tdevelop;is. </para>
<para>Mis see on? abi lisamiseks vidinale tuleb kasutada staatilist meetodit <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;text)</methodname> </para>
<para>Mis see on? abi lisamiseks vidinale tuleb kasutada staatilist meetodit <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;text)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Kiire teisendus <classname>QImage</classname> -> <classname>QPixMap</classname>. </para>
<para>Kiire teisendus <classname>TQImage</classname> -> <classname>QPixMap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Qt süvataseme pildiloome tugineb neile X11 ja muude aknasüsteemide võimetele, mille jaoks on olemas Qt pordid. Kuid see ka laiendab neid, teostades täiendavaid võimalusi, näiteks teksti ja pikselrastrite afiinsed transformatsioonid. </para>
<para>Qt 2D joonistamise keskne graafikaklass on <ulink url="kdeapi:qt/QPainter"></ulink>. Selle aluseks on <ulink url="kdeapi:qt/QPaintDevice"></ulink>. Teostatud on kolm võimalikku joonistamisseadet. <ulink url="kdeapi:qt/QWidget"></ulink> esindab vidinat ekraanil. <ulink url="kdeapi:qt/QPrinter"></ulink> esindab printerit ja loob PostScript väljundi. <ulink url="kdeapi:qt/QPicture"></ulink> tuvastab joonistamiskäsud ja võib salvestada need kettale ning neid hiljem taasesitada. Joonistamiskäskude võimalik salvestusvorming on W3C standard SVG. </para>
<para>Qt 2D joonistamise keskne graafikaklass on <ulink url="kdeapi:qt/QPainter"></ulink>. Selle aluseks on <ulink url="kdeapi:qt/QPaintDevice"></ulink>. Teostatud on kolm võimalikku joonistamisseadet. <ulink url="kdeapi:qt/TQWidget"></ulink> esindab vidinat ekraanil. <ulink url="kdeapi:qt/QPrinter"></ulink> esindab printerit ja loob PostScript väljundi. <ulink url="kdeapi:qt/QPicture"></ulink> tuvastab joonistamiskäsud ja võib salvestada need kettale ning neid hiljem taasesitada. Joonistamiskäskude võimalik salvestusvorming on W3C standard SVG. </para>
<para>Nii on võimalik renderduskoodi, mida kasutad vidina näitamiseks, pruukida ka trükkimiseks, kusjuures toetatud on samasugused võimalused. Praktikas kasutatakse koodi mõistagi veidi erinevas kontekstis. Vidina kujutamine tehakse peaaegu eranditult vidinaklassi meetodiga paintEvent(). </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(Pintslistiil) - loob musta pintsli ühega all näidatud vaikemustritest.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, Pintslistiil) - loob värvilise pintsli ühega all näidatud mustritest.</para>
<para>QBrush::QBrush(const TQColor &amp;, Pintslistiil) - loob värvilise pintsli ühega all näidatud mustritest.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) - loob värvilise pintsli omaloodud mustriga, mis antakse teise parameetrina.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) - loob värvilise pintsli omaloodud mustriga, mis antakse teise parameetrina.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Värv</title>
<para>Värvidel on oma osa nii kõverate esitamisel kui kujundite täitmisel. Qt-s esindab värve klass <ulink url="kdeapi:qt/QColor">QColor</ulink>. Qt ei toeta selliseid graafilisi võimalusi, nagu ICC värviprofiilid ja värvikorrektsioon. Värvid konstrueeritakse tavaliselt nende punast, rohelist ja sinist komponenti määratledes, kuna RGB on ka viis, millega esitatakse pikslid monitoril. </para>
<para>Värvidel on oma osa nii kõverate esitamisel kui kujundite täitmisel. Qt-s esindab värve klass <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. Qt ei toeta selliseid graafilisi võimalusi, nagu ICC värviprofiilid ja värvikorrektsioon. Värvid konstrueeritakse tavaliselt nende punast, rohelist ja sinist komponenti määratledes, kuna RGB on ka viis, millega esitatakse pikslid monitoril. </para>
<para>Võimalik on küll kasutada ka tooni, küllastust ja väärtust. Selline HSV on kasutusel GTK värvidialoogis, näiteks rakenduses Gimp. Siin vastab toon värviketta nurgale, küllastus aga tähistab vahemaad ketta keskpunktist. Väärtuse saab määrata eraldi liuguriga. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> vastab otseselt X11 pikselrasterobjektidele. Pikselrastrid on serveripoolsed objektid, mis moodsate graafikakaartide korral võivad olla isegi vahetult kaardimällu salvestatud. See muudab pikselrastrite edastamise ekraanile <emphasis>äärmiselt</emphasis> tõhusaks ja kiireks. Pikselrastrid toimivad ka vidinate vastena ekraanil - QPixmap on klassi QPaintDevice alamklass, nii et sellega on võimalik kasutada ka QPainterit. Moodsad graafikakaardid üldiselt kiirendavad elementaarseid joonistusoperatsioone. Seepärast on üpris tavaline kasutada pikselrastreid topeltpuhverduseks. See tähendab, et vidina vahetu joonistamise asemel joonistad ajutise pikselrasterobjekti ja kasutad selle edastamiseks vidinale funktsiooni <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink>. Keerulisemate asjade puhul aitab see vältida vilkumist. </para>
<para>Seevastu <ulink url="kdeapi:qt/QImage">QImage</ulink> objektid asuvad kliendi poolel. Nende põhiülesanne on pakkuda vahetut juurdepääsu pildi pikslitele. Nii saab neid kasutada pilditöötluseks ning sellisteks asjadeks nagu laadimine või kettale salvestamine (QPixmapi meetod load() kasutab vaheastmena QImage'it). Teisalt on pildi joonistamine vidinale üsna mahukas operatsioon, sest sellega kaasneb edastamine X'i serverisse, mis võib võtta omajagu aega, eriti kui tegemist on suurte piltidega või kaugserveritega. Sõltuvalt värvisügavusest võib teisendus QImage -> QPixmap nõuda ka pseudotoonimist. </para>
<para>Seevastu <ulink url="kdeapi:qt/TQImage">TQImage</ulink> objektid asuvad kliendi poolel. Nende põhiülesanne on pakkuda vahetut juurdepääsu pildi pikslitele. Nii saab neid kasutada pilditöötluseks ning sellisteks asjadeks nagu laadimine või kettale salvestamine (QPixmapi meetod load() kasutab vaheastmena TQImage'it). Teisalt on pildi joonistamine vidinale üsna mahukas operatsioon, sest sellega kaasneb edastamine X'i serverisse, mis võib võtta omajagu aega, eriti kui tegemist on suurte piltidega või kaugserveritega. Sõltuvalt värvisügavusest võib teisendus TQImage -> QPixmap nõuda ka pseudotoonimist. </para>
</simplesect>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Lisaks tavapärastele kirjetele on toodud näites näha, kuidas deklareerida teenuse omadusi. Igale omaduse definitsioonile vastab konfiguratsioonifailis grupp <literal>[PropertyDef::name]</literal>. Selles grupis deklareerib kirje <literal>Type</literal> omaduse tüübi. Võimalikud tüübid on kirjas klassis <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para><classname>KService</classname> objekti olemasolul on väga lihtne laadida teek ja hankida viit selle pere objektile: </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Starting kioserver failed with message " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>Toodud näiteks käivitatakse teenus "nimepidi", s.t. esimene <function>TDEApplication::startServiceByName()</function> argument on nimi, mis on näha töölauafaili real <literal>Name</literal>. Teine võimalus on kasutada funktsiooni <function>TDEApplication::startServiceByDesktopName()</function>, mis võtab argumendiks töölauafaili failinime, s.t. antud juhul <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Kõik väljakutsed kasutavad teise argumendina URL-ide nimekirja, mis antakse teenusele käsureal. Kolmas argument on viit klassile <classname>QString</classname>. Kui teenuse käivitamine ebaõnnestub, annab see argument tulemuseks tõlgitud veateate. </para>
<para>Kõik väljakutsed kasutavad teise argumendina URL-ide nimekirja, mis antakse teenusele käsureal. Kolmas argument on viit klassile <classname>TQString</classname>. Kui teenuse käivitamine ebaõnnestub, annab see argument tulemuseks tõlgitud veateate. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Mõistagi suudab isegi KMimeMagic määrata failitüüpi ainult kohalike failide sisu põhjal. Võrgufailide jaoks on veel üks võimalus: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Could not find out type" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Ikooni hankimine URL-ile. See uurib URL-i tüüpi ja tagastab sellega seotud ikooni. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>URL-i käivitamine. See uurib URL-i tüüpi ja käivitab kasutaja antud tüübi korral eelistatud programmi. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Nimetab faili ümber. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Loob nimeviida. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// load the file with the name tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Last modified: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int õigused, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Loob nimeviida.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -18,7 +18,7 @@ dcop `dcop | grep kmdr` KommanderIf
</screen>
<para>See eeldab, et oled &kommander;i failis ja sul on ligipääs spetsiaalsele @pid-ile, mis sisaldab protsessi ID-d. Tegelikult on lihtsam asendada <quote>kmdr-executor-@pid</quote> @dcopid-ga. Aga igal juhul on võimalik seda süntaksit kasutada (küll ilma erideta) käsurealt või mis tahes välisest skriptist, et muuta &kommander;i akent. </para>
<para>&kommander; on võtnud kasutusele palju kiirema sisemise &DCOP;-funktsiooni. Selle kasutamine mõne muu rakenduse aknast (konsooli &DCOP; on ikka päris aeglane) tekitab mõningaid raskusi, sest sa pead andma hulganisti infot, sealhulgas väljakutse prototüübi. Eeltoodud käsk võtab siis kuju (pane tähele, et @dcopid on dialoogis tegelikult sisene, aga sa võid selle asendada mis tahes korrektse protsessi ID-ga): </para>
<screen>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, tõeväärtus)</quote>, Vidin, true)
<screen>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, tõeväärtus)</quote>, Vidin, true)
</screen>
<para>Varasemas &kommander;is tähendas &DCOP;-väljakutsete pesastamine skriptikeele struktuuridesse (näiteks <application>bash</application>) seda, et väljakutsed tuli esitada konsoolilt. <emphasis>Kui kasutad sisest &DCOP;-i, käivitatakse esmalt kõik &kommander;i erid ja seejärel skript.</emphasis> Palun loe eelmist lauset veel kord, sest muidu ei ole nutul ja halal piiri, kui <application>bash</application> satub &kommander;i eridega lõpmatusse silmusesse. </para>
<para>On ka uus ja lihtsam viis kasutada &DCOP;-i &kommander;is endas, mida võimaldab objektsüntaks. Oletame, et soovid muuta teksti vidinas nimega @LineEdit1. See käib järgmiselt. </para>
@ -30,15 +30,15 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; globaalsete muutujatele</title>
<variablelist>
<varlistentry>
<term>global(QString muutujaNimi)</term>
<term>global(TQString muutujaNimi)</term>
<listitem>
<para>Tagastab määratud globaalse muutuja väärtuse. Kui skript käivitatakse &kommander;i aknast, lakkavad kõik skriptiga määratud (mitteglobaalsed) muutujad eksisteerimast pärast skripti töö lõpetamist ega ole seepärast enam kasutatavad muudes skriptides või ka sama väljakutse kordamisel. Globaalne <quote>skoop</quote> tähendab seda, et muutuja eksisteerib akna iga protsessi jaoks seni, kuni aken suletakse. Neid muutujaid võib igal ajal muuta funktsiooni <function>@setGlobal</function> uue väljakutsega. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString muugujaNimi, QString väärtus)</term>
<term>setGlobal(TQString muugujaNimi, TQString väärtus)</term>
<listitem>
<para>Loob muutuja, mis on akna protsessile globaalne ja omistab sellele väärtuse, Väärtuse saab hankida global(QString muutujaNimi) abil või ka uuesti määrata. </para>
<para>Loob muutuja, mis on akna protsessile globaalne ja omistab sellele väärtuse, Väärtuse saab hankida global(TQString muutujaNimi) abil või ka uuesti määrata. </para>
</listitem>
</varlistentry>
</variablelist>
@ -50,7 +50,7 @@ dcop `dcop | grep kmdr` KommanderIf
<para>Järgnev nimekiri on vananenud ja siin ära toodud rohkem ajaloo huvides. Kõigi vidinafunktsioonide ajakohastatud täielikku nimekirja pakub <emphasis>funktsioonibrauser</emphasis>, mille saab avada suvalisest &kommander;i tekstiredaktori aknast alumisele vasakpoolsele nupule vajutades. Need on nüüd vidinafunktsioonid, mitte enam &DCOP;-funktsioonid, aga &DCOP;-funktsioonid avaldatakse <emphasis>KommanderIf</emphasis> &DCOP;-liideses, mida kirjeldati eespool. Selle funktsionaalsuse väljakutsete loomise dialoogid on saadaval meie veebileheküljel. </para>
<variablelist>
<varlistentry>
<term>setText(QString tekst)</term>
<term>setText(TQString tekst)</term>
<listitem>
<para>See eemaldab see vidinas näidatava teksti ja asendab selle antava tekstiga. </para>
</listitem>
@ -68,7 +68,7 @@ dcop `dcop | grep kmdr` KommanderIf
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString tekst)</term>
<term>setAssociatedText(TQString tekst)</term>
<listitem>
<para>See määrab &kommander;i vaiketekstistringi. Tavaliselt määratakse selleks <quote>@widgetText</quote>, et näidata vidinasse sisestatut. Vaevalt sul seda eriti vaja läheb, aga igatahes on see olemas. Saab kasutada kõigi andmeid sisaldavate vidinate korral. </para>
</listitem>
@ -80,7 +80,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; loendikasti ja liitkasti vidinale</title>
<variablelist>
<varlistentry>
<term>addListItem(QString element, int index)</term>
<term>addListItem(TQString element, int index)</term>
<listitem>
<para>Lisab elemendi loendikasti vidinasse määratud indeksiga. Loendi indeks algab nullist. Loendi lõppu lisamiseks anna -1. </para>
</listitem>
@ -92,7 +92,7 @@ dcop `dcop | grep kmdr` KommanderIf
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString element)</term>
<term>addUniqueItem(TQString element)</term>
<listitem>
<para>addUniqueItem lisab elemendi loendi lõppu ainult siis, kui see on unikaalne. </para>
</listitem>
@ -128,7 +128,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; märkekasti ja raadionupu vidinale</title>
<variablelist>
<varlistentry>
<term>setChecked(QString elemendiNimi, tõeväärtus checked)</term>
<term>setChecked(TQString elemendiNimi, tõeväärtus checked)</term>
<listitem>
<para>Märgib või eemaldab märke märkekasti või raadionupu elemendilt. </para>
</listitem>
@ -140,7 +140,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; kaardividinale</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString elemendiNimi, int index)</term>
<term>setCurrentTab(TQString elemendiNimi, int index)</term>
<listitem>
<para>Valib kaardi indeksi järgi kaardividinalde. Indeks algab nulliga. </para>
</listitem>

@ -31,36 +31,36 @@ class KomLineEdit : public KLineEdit, public KommanderWidget
{
TQ_OBJECT
TQ_PROPERTY(QString populationText READ populationText WRITE setPopulationText DESIGNABLE false)
TQ_PROPERTY(TQString populationText READ populationText WRITE setPopulationText DESIGNABLE false)
TQ_PROPERTY(QStringList associations READ associatedText WRITE setAssociatedText DESIGNABLE false)
TQ_PROPERTY(bool KommanderWidget READ isKommanderWidget)
public:
KomLineEdit(QWidget *a_parent, const char *a_name);
KomLineEdit(TQWidget *a_parent, const char *a_name);
~KomLineEdit();
virtual QString widgetText() const;
virtual TQString widgetText() const;
virtual bool isKommanderWidget() const;
virtual void setAssociatedText(const QStringList&amp;);
virtual QStringList associatedText() const;
virtual QString currentState() const;
virtual TQString currentState() const;
virtual QString populationText() const;
virtual void setPopulationText(const QString&amp;);
virtual TQString populationText() const;
virtual void setPopulationText(const TQString&amp;);
public slots:
virtual void setWidgetText(const QString &amp;);
virtual void setWidgetText(const TQString &amp;);
virtual void populate();
protected:
void showEvent( QShowEvent *e );
signals:
void widgetOpened();
void widgetTextChanged(const QString &amp;);
void widgetTextChanged(const TQString &amp;);
};
</screen>
<para>Peamiselt on tegemist mallkoodiga, mille üle ei tasu pead murda. Tähele tuleb panna vaid kaht asja: fail kommanderwidget.h peab olema kaasatud kohe alguses ning klass peab olema esmalt tuletatud vidinast, mida me soovime lõimida &kommander;iga ja teiseks KommanderWidget'ist. </para>
<para>cpp-failis on teatud osad, mida tuleb iga konkreetse vidina puhul tähele panna. </para>
<screen>KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
<screen>KomLineEdit::KomLineEdit(TQWidget *a_parent, const char *a_name)
: KLineEdit(a_parent, a_name), KommanderWidget(this)
{
QStringList states;
@ -70,23 +70,23 @@ signals:
}
</screen>
<para>Konstruktoris saab määrata vidina võimalikud olekud. Meie tekstikastil ei ole mingeid olekuid, sestap anname talle ainult ühe, vaikimisi oleku <emphasis>default</emphasis>. Kui lood vidina, millel võib olla mitu olekut, näiteks märkekasti, siis saab siin määrata kolm olekut: märkimata (<emphasis>unchecked</emphasis>), poolmärgitud (<emphasis>semichecked</emphasis>) ja märgitud<emphasis>checked</emphasis>. </para>
<screen>QString KomLineEdit::currentState() const
<screen>TQString KomLineEdit::currentState() const
{
return QString("default");
return TQString("default");
}</screen>
<para>Eespool määrasime konstruktoris olekud ning see tagastab lihtsalt vidina aktiivse oleku. Meie vidina puhul on see alati <emphasis>default</emphasis>, aga muidu tuleb siia kirjutada kood, mis kontrollib, millises olekus vidin parasjagu on, ning tagastab vajaliku teate. </para>
<screen>QString KomLineEdit::widgetText() const
<screen>TQString KomLineEdit::widgetText() const
{
return KLineEdit::text();
}
void KomLineEdit::setWidgetText(const QString &amp;a_text)
void KomLineEdit::setWidgetText(const TQString &amp;a_text)
{
KLineEdit::setText(a_text);
emit widgetTextChanged(a_text);
}
</screen>
<para>Need on kaks kõige tähtsamat meetodit, mis sisaldavat põhiosa funktsionaalsest koodist. Meetod <emphasis>QString KomLineEdit::widgetText() const</emphasis> tagastab vidina teksti (teksti, milleks tekstiseoses laiendatakse eri <emphasis>@widgetText</emphasis>. Meie vidina puhul on tekst see, mida kirjutatakse tekstikasti, nii et see tagastataksegi. Vidina teksti määramisel tuleb meil määrata tekstikasti kirjutatav tekst. Me saadame pärast vidina teksti määramist signaali <emphasis>widgetTextChanged()</emphasis>, et teised vidinat teaksid, et seda vidinat on uuendatud. </para>
<para>Need on kaks kõige tähtsamat meetodit, mis sisaldavat põhiosa funktsionaalsest koodist. Meetod <emphasis>TQString KomLineEdit::widgetText() const</emphasis> tagastab vidina teksti (teksti, milleks tekstiseoses laiendatakse eri <emphasis>@widgetText</emphasis>. Meie vidina puhul on tekst see, mida kirjutatakse tekstikasti, nii et see tagastataksegi. Vidina teksti määramisel tuleb meil määrata tekstikasti kirjutatav tekst. Me saadame pärast vidina teksti määramist signaali <emphasis>widgetTextChanged()</emphasis>, et teised vidinat teaksid, et seda vidinat on uuendatud. </para>
<para>Vidinale funktsionaalsuse lisamiseks tuleb registreerida vastavad funktsioonid ja lisada neile vajalik kood. Registreerimiseks mõeldud kood tuleb asetada cpp-faili algusse konstruktori ette: </para>
<screen>#include &lt;tdelocale.h&gt; //for i18n
@ -99,16 +99,16 @@ enum Functions {
Function2,
LastFunction
};
KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
KomLineEdit::KomLineEdit(TQWidget *a_parent, const char *a_name)
: KLineEdit(a_parent, a_name), KommanderWidget(this)
{
... //code like described above
KommanderPlugin::setDefaultGroup(Group::DCOP);
KommanderPlugin::registerFunction(Function1, "function1(QString widget, QString arg1, int arg2)", i18n("Call function1 with two arguments, second is optional."), 2, 3);
KommanderPlugin::registerFunction(function2, "function2(QString widget)", i18n("Get a QString as a result of function2."), 1);
KommanderPlugin::registerFunction(Function1, "function1(TQString widget, TQString arg1, int arg2)", i18n("Call function1 with two arguments, second is optional."), 2, 3);
KommanderPlugin::registerFunction(function2, "function2(TQString widget)", i18n("Get a TQString as a result of function2."), 1);
}
</screen>
<para>See registreerib kaks funktsiooni: <emphasis>function1 ja function2</emphasis>. Funktsioonile omistatav number (siin <emphasis>1160</emphasis> ja <emphasis>1161</emphasis>) peab olema unikaalne, seda ei tohi kasutada üheski muus pluginas ega &kommander;is endas. Funktsioonile <emphasis>function1</emphasis> võib anda kaks argumenti, millest üks pole kohustuslik; funktsioonil <emphasis>function2</emphasis> ei saa anda ühtegi argumenti ja see tagastab stringi. Argument <emphasis>QString widget</emphasis> näitab, et funktsioonid tegutsevad vidinas, näiteks: <emphasis>KomLineEdit.function1("foo", 1)</emphasis>. </para>
<para>See registreerib kaks funktsiooni: <emphasis>function1 ja function2</emphasis>. Funktsioonile omistatav number (siin <emphasis>1160</emphasis> ja <emphasis>1161</emphasis>) peab olema unikaalne, seda ei tohi kasutada üheski muus pluginas ega &kommander;is endas. Funktsioonile <emphasis>function1</emphasis> võib anda kaks argumenti, millest üks pole kohustuslik; funktsioonil <emphasis>function2</emphasis> ei saa anda ühtegi argumenti ja see tagastab stringi. Argument <emphasis>TQString widget</emphasis> näitab, et funktsioonid tegutsevad vidinas, näiteks: <emphasis>KomLineEdit.function1("foo", 1)</emphasis>. </para>
<para>Et ka &kommander; teaks ,et vidin neid funktsioone toetab, lisa selline meetod: </para>
<screen>bool KomLineEdit::isFunctionSupported(int f)
{
@ -116,7 +116,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
}
</screen>
<para>See tähendab, et KomLineEdit toetab ülaltoodud funktsioone ja standardset funktsiooni <emphasis>text</emphasis>. Funktsiooni koodi saab käsitleda meetodi handleDCOP raames: </para>
<screen>QString KomLineEdit::handleDCOP(int function, const QStringList&amp; args)
<screen>TQString KomLineEdit::handleDCOP(int function, const QStringList&amp; args)
{
switch (function)
{
@ -132,7 +132,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
default:
return KommanderWidget::handleDCOP(function, args);
}
return QString::null;
return TQString::null;
}
</screen>
<para>Tegemist on juhtudega, kus vidin võib olla redaktoris ja executoris erinev, näiteks skriptiobjektide, infodialoogi vms. puhul. Tavaliselt näidatakse vidina asemel QLabel'it. Selleks peab vidin tulenema QLabel'ist, milleks konstruktoris peab seisma järgmine kood: </para>
@ -147,7 +147,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
setHidden(true);
</screen>
<para>Ka vidina enda (kui sul läheb üldse vidinat tarvis - vahest pakub sinu "vidin" kõigest võimalust kasutada andmebaasi vms.) võib luua mõnes funktsioonis, näiteks funktsioonis <emphasis>execute</emphasis>. Toome näite infodialoogi põhjal: </para>
<screen>QString AboutDialog::handleDCOP(int function, const QStringList&amp; args)
<screen>TQString AboutDialog::handleDCOP(int function, const QStringList&amp; args)
{
switch (function) {
...
@ -184,7 +184,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
{
public:
MinuKomPlugin();
virtual QWidget *create( const QString &amp;className, QWidget *parent = 0, const char *name = 0 );
virtual TQWidget *create( const TQString &amp;className, TQWidget *parent = 0, const char *name = 0 );
};
</screen>
<para>Seejärel loome KommanderPlugin'i alamklassi <emphasis>MyKomPlugin</emphasis>. See sisaldab lihtsalt konstruktorit ja tühistavat loomismeetodit. </para>
@ -196,7 +196,7 @@ public:
</screen>
<para>Plugina konstruktoris kutsume <emphasis>addWidget()</emphasis> välja iga vidina puhul, mida plugin meie soovide kohaselt peab pakkuda. <emphasis>addWidget()</emphasis> võib kasutada kuut argumenti, aga vajalikud on ainult esimesed neli. Argumendid on järgmises järjekorras: vidina klassi nimi, grupp, kohtspikker, redaktori tööriistaribal kasutatava ikooni ikoonirühm, 'Mis see on?' teave ning tõeväärtus, mis osutab, kas vidin on teiste vidinate konteiner või mitte. Seda teavet kasutab redaktor vidinate rühmitamisel menüüs, abiinfo pakkumisel jne. </para>
<para>Mis puutub ikooni, siis toodud näide laadib keskmise suurusega ikooni <emphasis>ikooninimi</emphasis> &kde; ikoonide standardsest asukohast. </para>
<screen>QWidget *MinuKomPlugin::create( const QString &amp;className, QWidget *parent, const char *name )
<screen>TQWidget *MinuKomPlugin::create( const TQString &amp;className, TQWidget *parent, const char *name )
{
if( className == "KomLineEdit" )
return new KomLineEdit( parent, name );
@ -251,7 +251,7 @@ void WidgetDatabase::setupDataBase( int id )
<screen>...
#include "minuvidin.h"
...
QWidget *WidgetFactory::createWidget( const QString &amp;className, QWidget *parent, const char *name, bool init,
TQWidget *WidgetFactory::createWidget( const TQString &amp;className, TQWidget *parent, const char *name, bool init,
const QRect *r, Qt::Orientation orient )
{
...

@ -176,7 +176,7 @@ debug(result)</screen> Skriptis leiad midagi sellist: <screen>var = str_upper(Se
return(var)</screen> Nüüd tagastatakse teatelogis <emphasis>Stderr</emphasis> <emphasis>HELLO WORLD</emphasis>. </para>
<para>Skripti pesaga ühendatud signaali vastuvõtmine käib samamoodi. <emphasis>Self.Item(0)</emphasis> on esimene parameeter jne. Edastatud argumentide arvu hankimiseks on mõeldud <emphasis>ScriptObject.count</emphasis>. </para>
<para>Käserea parameetrid lubavad nii nimega kui ka nimeta argumente. Nimeta argument näeb välja selline: <screen>kmdr-executor myprog.kmdr 100 red</screen> kus _ARG1 = 100 ja _ARG2 = red. Tühikutega stringide edastamisel argumendina tuleb nad panna jutumärkidesse. Dialoogikäsu kasutamine muudab asjad keerulisemaks, sest kogu argumendistring tuleb edastada tervikuna, mis tähendab selle asetamist jutumärkidesse. <screen>dialog("mydialog.kmdr", 100+" \"Hello World\"")</screen> See tagastab <emphasis>_ARG1 = 100</emphasis> ja <emphasis>_ARG2 = Hello World</emphasis>. Ilma jutumärkideta saaksid <emphasis>_ARG2 = Hello</emphasis> ja <emphasis>_ARG3 = World</emphasis>. Nimega parameetrite kasutamine on kenam ja mitte nii segadusseajav. <screen>dialog("mydialog.kmdr", "xcount=100 xquote=Hello world")</screen> Nüüd saad neid kasutada globaalsete muutujatega <emphasis>_xcount</emphasis> ja <emphasis>_xquote</emphasis>. </para>
<para>DCOP võib olla päris keeruline, mistõttu me soovitame kasutada meie tööriistu DCOP-i lubamiseks &kommander;i võrgudialoogides näiteks funktsioonisirvijaga. Toome näite DCOP-i väljakutse kohta dialoogist, mis on avatud &kommander;i eellasaknast. Kuna ta teab oma eellast, võib ta saata teabe tagasi ajal, mil ta on avatud, ning vabalt kasutada kõiki oma eellase funktsioone, välja arvatud pesad. Loomulikult saab seda teha ka seesmiselt skriptiga, mis kutstutakse välja väliselt, nii et praktikas ei ole sisuliselt mingeid piire. <screen>dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(QString,QString)", "StatusBar8", "Hello")</screen> Vaatame seda osade kaupa. Kõigepealt lisame <emphasis>parentPid</emphasis> "kmdr-ececutor-"-ile, sest me ei saa eeldada, et väljakutsuja on &kommander;i aken. Seda võib kasutada Quanta või KSpreadi või millega tahes. Seejärel adresseerime <emphasis>KommanderIf</emphasis>'i, mis on <emphasis>kena</emphasis> ja puhastatud liides lõppkasutajale. Me loodame, et kui KDE lõpuks KDE4 ajal vahetab DCOP-i välja D-Busi vastu, võtab aina enam rakendusi omaks selle kena lõimimist soodustava liidese. Järgmine parameeter <emphasis>"setText(QString,QString)"</emphasis> on oluline, sest see muudab lubatud parameetrid <emphasis>prototüübiks</emphasis>. Vastasel juhul ei suudaks &kommander; väljakutset valideerida. Niisiis ilma DCOP-väljakutse definitsioonita on tulemuseks viga. Ülejäänud on mõistagi edastatavad parameetrid. Me soovitame uurida rakendusi, mis kasutavad <command>kdcop</command>'i, kui soovid näha, kuidas see töötab, ning harjutada DCOP-väljakutsetega shellis, kuni omandad õige süntaksi. </para>
<para>DCOP võib olla päris keeruline, mistõttu me soovitame kasutada meie tööriistu DCOP-i lubamiseks &kommander;i võrgudialoogides näiteks funktsioonisirvijaga. Toome näite DCOP-i väljakutse kohta dialoogist, mis on avatud &kommander;i eellasaknast. Kuna ta teab oma eellast, võib ta saata teabe tagasi ajal, mil ta on avatud, ning vabalt kasutada kõiki oma eellase funktsioone, välja arvatud pesad. Loomulikult saab seda teha ka seesmiselt skriptiga, mis kutstutakse välja väliselt, nii et praktikas ei ole sisuliselt mingeid piire. <screen>dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(TQString,TQString)", "StatusBar8", "Hello")</screen> Vaatame seda osade kaupa. Kõigepealt lisame <emphasis>parentPid</emphasis> "kmdr-ececutor-"-ile, sest me ei saa eeldada, et väljakutsuja on &kommander;i aken. Seda võib kasutada Quanta või KSpreadi või millega tahes. Seejärel adresseerime <emphasis>KommanderIf</emphasis>'i, mis on <emphasis>kena</emphasis> ja puhastatud liides lõppkasutajale. Me loodame, et kui KDE lõpuks KDE4 ajal vahetab DCOP-i välja D-Busi vastu, võtab aina enam rakendusi omaks selle kena lõimimist soodustava liidese. Järgmine parameeter <emphasis>"setText(TQString,TQString)"</emphasis> on oluline, sest see muudab lubatud parameetrid <emphasis>prototüübiks</emphasis>. Vastasel juhul ei suudaks &kommander; väljakutset valideerida. Niisiis ilma DCOP-väljakutse definitsioonita on tulemuseks viga. Ülejäänud on mõistagi edastatavad parameetrid. Me soovitame uurida rakendusi, mis kasutavad <command>kdcop</command>'i, kui soovid näha, kuidas see töötab, ning harjutada DCOP-väljakutsetega shellis, kuni omandad õige süntaksi. </para>
</sect2>
</sect1>
<!--
@ -332,7 +332,7 @@ end
<listitem>
<para><command>createWidget(<parameter>vidinanimi</parameter>, <parameter>vidinatüüp</parameter>, <parameter>eellane</parameter>)</command> - loob uue vidina. Seejärel võib selle asetada näiteks tabelisse või tööriistakasti ja muuta <command>minuvidin.show(true)</command> abil nähtavaks. Kui asetad uue vidina vormi, pead mõtlema ka paigutusele. &kommander; ei loo paigutusi lennult ega muuda pikslikaupa positsioneerimist (enamasti). See on veidi häiriv isegi C++ arenduse korral. Me soovitame kasutada rühmakasti ja tegelda paigutusega dialoogis, mis võimaldab parima kontrolli asjade käigu üle. </para></listitem>
<listitem>
<para><command>connect(<parameter>saatja</parameter>, <parameter>signaal</parameter>, <parameter>saaja</parameter>, <parameter>pesa</parameter>)</command> - ühendab vidina signaali vidina pesaga. Uuri ühenduse dialoogi ja vali sarnased vidinad võimaluste selgitamiseks. Kui näiteks signaal näeb välja nagu <command>execute(const QString&amp;)</command>, siis peabki just see siin jutumärkides olema. </para></listitem>
<para><command>connect(<parameter>saatja</parameter>, <parameter>signaal</parameter>, <parameter>saaja</parameter>, <parameter>pesa</parameter>)</command> - ühendab vidina signaali vidina pesaga. Uuri ühenduse dialoogi ja vali sarnased vidinad võimaluste selgitamiseks. Kui näiteks signaal näeb välja nagu <command>execute(const TQString&amp;)</command>, siis peabki just see siin jutumärkides olema. </para></listitem>
<listitem>
<para><command>disconnect(<parameter>saatja</parameter>, <parameter>signaal</parameter>, <parameter>saaja</parameter>, <parameter>pesa</parameter>)</command> - tühistab eeltoodud ühenduse. Ka siin on oluline täpne süntaks. </para></listitem>
<listitem>

@ -61,7 +61,7 @@
<title>Signaalid ja pesad</title>
<para>Üks väga kasulik Qt Disainerilt üle võetud omadus on signaalid ja pesad. Liidest on muidugi muudetud, et see arvestaks paremini &kommander;i kasutajaid. Signaalid ja pesad on Qt/KDE rakenduse sisemised sündmuste juhtelemendid. Me oleme püüdnud teha nii, et sa ei peaks midagi teadma C++ andmetüüpide erinevusest, aga kui kasutad uut funktsiooni ühenduse lennult loomiseks, on mugav kopeerida see teave ühenduse tööriistast. Vaatame, mida see siis tähendab. Ühes vidinas juhtub midagi. See võib olla klõps, topeltklõps, väärtuse muutmine, milegi valimine või menõüü kasutamine. Need on lihtsalt valik sündmusi, mis saadavd teele signaali. Nimekirja saab muuta loendikastis, kui teed liitkastis uue valiku. See on kasulik keerukama rakenduse puhul ning ainus viis, kuidas seda teha ilma järgmist nuppu klõpsamata, ongi signaali ühendamine pesaga. Pesa võib olla skript või nupp. Kui pesa saab signaali, teeb see seda, mida signaal ütleb. Ühenduste redigeerimiseks on omaette tööriist. Ole selle kasutamisel hoolikas, sest on terve hulk päritud signaale ja pesasid. Nii võib näiteks tekkida segadus, kui kogemata annad skriptile, mis on nähtamatu, kui dialoog töötab, ülesande muuta selle suurust, mitte aga seda käivitada. </para>
<para>Ühenduste tööriista saab avada, kui teed kuskil dialoogis paremklõpsu ja valid selle kontekstimenüüst. Klõpsa menüüs ja näedki akent ühenduste nimekirjaga. Nimekirja kohal on signaalide ja pesade loendid ning nende kohal on valitud vajalikud saatja ja saaja. Väga lihtne on ühendusi luua visuaalselt. Vaata tööriistariba või menüüd Tööriistad. Seal on kolm elementi: viit, signaalide ja pesade ühendused ning kaartide järjekord või vidinad. Valimisel määratakse ühenduse režiim. Klõpsa vidinal, mis saadab signaali, ja lohista see vidinale, mis peab pesana signaali saama. Seda tehes näed joont ja hiire alla jäävale vidinale tekkivat kukutamismärki. Redaktori olekuriba annab teada, mida ühendatakse. </para>
<note><para>&kommander;i versioonis 1.3 on funktsioon connect(), mis võimaldab ühendada signaale ja pesasid lennult. See on kasuks, kui pruukisid äsja createWidgetit. Dialoogi ei saa mõistagi kasutada millekski, mille olemasolust ei ole &kommander; veel teadlik. Paraku on kombinatsioone nii palju, et sul tuleb signaalid ja pesad kirja panna. <emphasis>Need tuleb kirjutada täiesti täpselt, sest muidu nad ei toimi</emphasis>. Siin on taas abiks ühenduste tööriist. Ava see ja vali kaks vidinat, mida soovid ühendada. Loe ühenduse teavet. Kui see ütleb näiteks <command>execute(const QString&amp;)</command>, siis just nii tuleb ka kirjutada.</para></note>
<note><para>&kommander;i versioonis 1.3 on funktsioon connect(), mis võimaldab ühendada signaale ja pesasid lennult. See on kasuks, kui pruukisid äsja createWidgetit. Dialoogi ei saa mõistagi kasutada millekski, mille olemasolust ei ole &kommander; veel teadlik. Paraku on kombinatsioone nii palju, et sul tuleb signaalid ja pesad kirja panna. <emphasis>Need tuleb kirjutada täiesti täpselt, sest muidu nad ei toimi</emphasis>. Siin on taas abiks ühenduste tööriist. Ava see ja vali kaks vidinat, mida soovid ühendada. Loe ühenduse teavet. Kui see ütleb näiteks <command>execute(const TQString&amp;)</command>, siis just nii tuleb ka kirjutada.</para></note>
</sect2>
<sect2 id="slot-functions">

@ -3996,5 +3996,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Lubab/keelab olekuriba"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -30111,13 +30111,13 @@ msgstr "SSL sertifikaadi usaldus"
#~ "lisa muutuja jälgimisaknasse.\n"
#~ "Muutuja väärtuse muutmiseks kasuta vaatlemismuutujat (&eg; a=5)."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 stiil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 stiil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""

@ -4023,5 +4023,5 @@ msgstr ""
#~ msgid "folder"
#~ msgstr "karpeta"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -7246,8 +7246,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"Jarauntsi anitzak eratorritako TQObject objektua oinarrizko klase "
"zerrendaren lehena eta bakarra izatea behar du."
"Jarauntsi anitzak eratorritako TQObject objektua oinarrizko klase zerrendaren "
"lehena eta bakarra izatea behar du."
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -30190,13 +30190,13 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Sartu zure klasea berri eratorrizkoaren oinarrizko klasea. \"Sortu "
#~ "QWidget seme-klasea\" gaituta baduzu, klase berria QWidget-etik "
#~ "TQWidget seme-klasea\" gaituta baduzu, klase berria TQWidget-etik "
#~ "eratorriko da. Oinarrizko klaserik zehazten ez bada, klase berriak ez du "
#~ "aita-klaserik izango. Plantila klaseak ere zehatz ditzakezu (adib. "
#~ "BaseClass<int, int>)"

@ -5662,8 +5662,8 @@ msgid ""
"<p><b>TQWidget::%1</b></p><p>There is no documentation available for this "
"property.</p>"
msgstr ""
"<p><b>TQWidget::%1</b></p><p>مستندات قابل دسترسی برای این ویژگی وجود ندارد. "
"</p>"
"<p><b>TQWidget::%1</b></p><p>مستندات قابل دسترسی برای این ویژگی وجود ندارد. </"
"p>"
#: kdevdesigner/designer/propertyeditor.cpp:4027
msgid "New Signal Handler"
@ -29784,13 +29784,13 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "ردۀ پایه که باید ردۀ جدید شما از آن منشعب شود را درج کنید. اگر »تولید ردۀ "
#~ "فرزند QWidget« را علامت بزنید، ردۀ جدید شما از QWidget منشعب خواهد شد. "
#~ "فرزند TQWidget« را علامت بزنید، ردۀ جدید شما از TQWidget منشعب خواهد شد. "
#~ "اگر هیچ ردۀ اصلی نام‌گذاری نشده باشد، ردۀ جدید پدری نخواهد داشت. همچنین، "
#~ "رده‌های قالب را می‌توانید در اینجا استفاده کنید ) مثلBaseClass<int, int>("

@ -3960,5 +3960,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Zoom:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -7381,8 +7381,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"Moniperintä edellyttää TQObject johdannaisen olevan ensimmäisenä ja "
"uniikkina kantaluokkalistassa."
"Moniperintä edellyttää TQObject johdannaisen olevan ensimmäisenä ja uniikkina "
"kantaluokkalistassa."
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -23774,8 +23774,8 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Lisää kantaluokka, josta uusi luokkasi periytetään. Jos olet valinnut kohdan "
"\"Luo TQWidget-aliluokka\", uusi luokka periytetään TQWidget-luokasta. Jos "
"et anna kantaluokan nimeä, uudella luokalla ei ole yliluokkaa. Voit käyttää "
"\"Luo TQWidget-aliluokka\", uusi luokka periytetään TQWidget-luokasta. Jos et "
"anna kantaluokan nimeä, uudella luokalla ei ole yliluokkaa. Voit käyttää "
"myös malliluokkia (kuten Kantaluokka<int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
@ -30204,13 +30204,13 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Lisää kantaluokka, josta uusi luokkasi periytetään. Jos olet valinnut "
#~ "kohdan \"Luo QWidget-aliluokka\", uusi luokka periytetään QWidget-"
#~ "kohdan \"Luo TQWidget-aliluokka\", uusi luokka periytetään TQWidget-"
#~ "luokasta. Jos et anna kantaluokan nimeä, uudella luokalla ei ole "
#~ "yliluokkaa. Voit käyttää myös malliluokkia (kuten Kantaluokka<int, int>)"

@ -1719,11 +1719,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1740,15 +1740,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Loading KDE
<para>Avant que votre application en commence son travail de calcul intensif, ou avant qu'elle ne commence à charger des modules externes, &etc;, invoquez &ksplash; comme suit :</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Si vous voulez afficher un message avec ou sans icône, utilisez</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Les classes de modules externes devraient fournir une fonction <literal>static</literal> nommée <function>names</function>, qui retourne une liste de noms par lesquels elle peut être invoquée.</para></listitem>
<listitem><para>Si l'additif peut être configuré dans le module du centre de configuration, il devrait fournir une classe <literal>ThemeEngineConfig</literal> pour la configuration.</para></listitem>
<listitem><para>La classe de l'additif doit écraser au moins une des fonctions virtuelles<function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> et <function>slotUpdateSteps</function> pour la rendre utilisable.</para></listitem>
<listitem><para>Le constructeur doit prendre la forme <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> de telle manière qu'il peut être utilisé avec <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Le constructeur doit prendre la forme <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> de telle manière qu'il peut être utilisé avec <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>La dernière chose nécessaire peut sembler compliquée, mais, comme nous le verrons plus tard, en ajoutant une simple ligne à vos fichiers source, vous pouvez habituellement ignorer cela.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analysons le listing ci-dessus. La classe <classname>Theme2k</classname> satisfait les conventions de nommage, et est héritée de <classname>ThemeEngine</classname>. Elle fournit un <methodname>Theme2k::names()</methodname>, et a un constructeur qui prend les paramètres requis : <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function>, et fournit aussi une méthode <methodname>Theme2k::slotSetText()</methodname> simple. Pour le moment, ne vous inquiétez pas à propos de la classe <classname>RotWidget</classname>. C'est un petit widget qui fournit des choses agréables à l'œil pour l'utilisateur. Notre additif est très simple et n'affiche pas d'icône ou de barre de progression. Si vous voulez afficher des icônes, écrasez la fonction <function>slotSetPixmap</function>. Des fonctions similaires existent pour la plage de la barre de progression (<function>slotUpdateSteps</function>) et l'incrémentation (<function>slotUpdateProgress</function>) le pas courant. </para>
<para>Analysons le listing ci-dessus. La classe <classname>Theme2k</classname> satisfait les conventions de nommage, et est héritée de <classname>ThemeEngine</classname>. Elle fournit un <methodname>Theme2k::names()</methodname>, et a un constructeur qui prend les paramètres requis : <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function>, et fournit aussi une méthode <methodname>Theme2k::slotSetText()</methodname> simple. Pour le moment, ne vous inquiétez pas à propos de la classe <classname>RotWidget</classname>. C'est un petit widget qui fournit des choses agréables à l'œil pour l'utilisateur. Notre additif est très simple et n'affiche pas d'icône ou de barre de progression. Si vous voulez afficher des icônes, écrasez la fonction <function>slotSetPixmap</function>. Des fonctions similaires existent pour la plage de la barre de progression (<function>slotUpdateSteps</function>) et l'incrémentation (<function>slotUpdateProgress</function>) le pas courant. </para>
</sect1>
<sect1 id="Implementation">
<title>Implémentation de l'additif</title>
@ -686,7 +686,7 @@ private:
<para>La macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> est déclarée dans <filename>kgenericfactory.h</filename>. En avant vers le constructeur ! Comme c'est un additif très simple, le constructeur est minimaliste.</para>
<example>
<title>Constructeur d'additif</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Les fonctions DCOP</title>
<para>L'interface <abbrev>DCOP</abbrev> de &kstars; inclut les fonctions suivantes : <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function> : pointer le focus d'affichage dans une direction spécifiée par l'argument. Ceci peut être le nom de n'importe quel objet dans le ciel, ou une des directions suivantes : zenith (ou z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function> : pointer le focus d'affichage dans une direction spécifiée par l'argument. Ceci peut être le nom de n'importe quel objet dans le ciel, ou une des directions suivantes : zenith (ou z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ad, double déc )</function> : pointer le focus d'affichage aux coordonnées équatoriales spécifiées. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function> : pause pendant t secondes avant de continuer avec les commandes suivantes du script. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function> : arrêter l'exécution du script jusqu'à ce que l'utilisateur enfonce la touche spécifiée. À cet endroit, vous ne pouvez pas spécifier de combinaisons de touches (comme <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>) ; utilisez de simples touches. Vous pouvez écrire <quote>space</quote> pour indiquer la barre d'espacement. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function> : arrêter l'exécution du script jusqu'à ce que l'utilisateur enfonce la touche spécifiée. À cet endroit, vous ne pouvez pas spécifier de combinaisons de touches (comme <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>) ; utilisez de simples touches. Vous pouvez écrire <quote>space</quote> pour indiquer la barre d'espacement. </para></listitem>
<listitem><para><function> setTracking( bool track )</function> : inverser l'utilisation du mode de suivi ou non. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString valeur )</function> : ajuster une option d'affichage. Il y a des douzaines et des douzaines d'options disponibles ; en gros, tout ce que vous pouvez changer dans la fenêtre <guilabel>Configuration de &kstars;</guilabel>, vous pouvez le changer ici. Le premier argument est le nom de l'option (les noms sont pris dans le fichier de configuration <filename>kstarsrc</filename>), et le second argument est la valeur désirée. L'analyseur d'arguments est conçu pour être robuste. Ainsi, si vous envoyez accidentellement une mauvaise donnée, il devrait échouer sans heurt. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString valeur )</function> : ajuster une option d'affichage. Il y a des douzaines et des douzaines d'options disponibles ; en gros, tout ce que vous pouvez changer dans la fenêtre <guilabel>Configuration de &kstars;</guilabel>, vous pouvez le changer ici. Le premier argument est le nom de l'option (les noms sont pris dans le fichier de configuration <filename>kstarsrc</filename>), et le second argument est la valeur désirée. L'analyseur d'arguments est conçu pour être robuste. Ainsi, si vous envoyez accidentellement une mauvaise donnée, il devrait échouer sans heurt. </para></listitem>
<listitem><para><function> setGeoLocation( const QString ville, const QString province, const QString pays )</function> : changer l'emplacement d'observation pour la ville spécifiée. Si aucune ville correspondant à l'argument n'est trouvée, rien ne se passe. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString ville, const TQString province, const TQString pays )</function> : changer l'emplacement d'observation pour la ville spécifiée. Si aucune ville correspondant à l'argument n'est trouvée, rien ne se passe. </para></listitem>
<listitem><para><function> stop()</function> [clock] : arrêter l'horloge de simulation. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Fonctions génériques du matériel : fonctions pour établir/arrêter le matériel, etc.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function> : établir un service INDI, soit en local, soit en serveur.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function> : arrêter le service INDI.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function> : connecter ou déconnecter un service INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function> : déterminer le port de connexion du matériel.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function> : active une action INDI. L'action peut êtren'importequel <emphasis>élément</emphasis> dans une <emphasis>propriété d'interrpution</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function> : mettre en pause l'exécution du script jusqu'à ce que l'action spécifiée <emphasis>property</emphasis> retourne l'état OK.</para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function> : établir un service INDI, soit en local, soit en serveur.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function> : arrêter le service INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function> : connecter ou déconnecter un service INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function> : déterminer le port de connexion du matériel.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function> : active une action INDI. L'action peut êtren'importequel <emphasis>élément</emphasis> dans une <emphasis>propriété d'interrpution</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function> : mettre en pause l'exécution du script jusqu'à ce que l'action spécifiée <emphasis>property</emphasis> retourne l'état OK.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fonctions de télescope : les fonctions pour contrôler le mouvement et l'état du télescope.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function> : détermine le mode ou l'action du télescope. Les options disponibles sont SLEW, TRACK, SYNC, PARK, et ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function> : détermine les coordonnées de la cible JNow du télescope à <emphasis>AD</emphasis> et <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function> : Détermine les coordonnées de cible JNow du télescope de <emphasis>objectName</emphasis>. KStars cherchera le nom de l'objet dans sa base de données et cherchera l'AD et la Déc une fois trouvé.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function> : détermine l'emplacement géographique du télescope aux longitude et latitude spécifiées. La longitude est mesurée depuis Greenwich, Angleterre, vers l'Est. Cependant, alors qu'il est habituel d'utiliser des longitudes négatives vers l'Ouest, INDI utilise des longitudes entre 0 et 360 degrés. Ainsi, si vous avez une longitude négative, ajoutez simplement 360 degrés pour obtenir la valeur que INDI attend. Par exemple, les coordonnées de Calgary, Canada dans &kstars; sont -114 04 58; latitude: 51 02 58. Vous devrez fournir une longitude de 360 - 114.069 = 245.931 degrés.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function> : détermine la date et l'heure UTC en format ISO 8601. Le format est AAAA-MM-JJTHH:MM:SS (&pex; 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function> : détermine le mode ou l'action du télescope. Les options disponibles sont SLEW, TRACK, SYNC, PARK, et ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function> : détermine les coordonnées de la cible JNow du télescope à <emphasis>AD</emphasis> et <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function> : Détermine les coordonnées de cible JNow du télescope de <emphasis>objectName</emphasis>. KStars cherchera le nom de l'objet dans sa base de données et cherchera l'AD et la Déc une fois trouvé.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function> : détermine l'emplacement géographique du télescope aux longitude et latitude spécifiées. La longitude est mesurée depuis Greenwich, Angleterre, vers l'Est. Cependant, alors qu'il est habituel d'utiliser des longitudes négatives vers l'Ouest, INDI utilise des longitudes entre 0 et 360 degrés. Ainsi, si vous avez une longitude négative, ajoutez simplement 360 degrés pour obtenir la valeur que INDI attend. Par exemple, les coordonnées de Calgary, Canada dans &kstars; sont -114 04 58; latitude: 51 02 58. Vous devrez fournir une longitude de 360 - 114.069 = 245.931 degrés.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function> : détermine la date et l'heure UTC en format ISO 8601. Le format est AAAA-MM-JJTHH:MM:SS (&pex; 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function> : fonctions pour contrôler les propriétés et l'état des caméras et CCD.</para>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function> : fonctions pour contrôler les propriétés et l'état des caméras et CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function> : détermine la température de la puce cible en degrés Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function> : détermine le type de cadre CCD. Les options disponibles sont FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, et FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function> : commencer l'exposition CCD/Caméra pour la durée spécifiée par <emphasis>timeout</emphasis> en secondes.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function> : détermine la température de la puce cible en degrés Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString deviceName, TQString type)</function> : détermine le type de cadre CCD. Les options disponibles sont FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, et FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function> : commencer l'exposition CCD/Caméra pour la durée spécifiée par <emphasis>timeout</emphasis> en secondes.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fonctions de focus : fonctions pour contrôler le mouvement et l'état du viseur.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function> : déterminer la vitesse du viseur. Les options disponibles sont FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, et FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function> : déterminer la durée en secondes pour n'importe quelle opération consécutive à startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function> : déplacer le viseur soit en rapprochement (focusDir = 0), soit en éloignement (focusDir = 1). La vitesse et la durée de cette opération sont déterminées par les fonctions <function>setINDIFocusSpeed()</function> et <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function> : déterminer la vitesse du viseur. Les options disponibles sont FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, et FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function> : déterminer la durée en secondes pour n'importe quelle opération consécutive à startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function> : déplacer le viseur soit en rapprochement (focusDir = 0), soit en éloignement (focusDir = 1). La vitesse et la durée de cette opération sont déterminées par les fonctions <function>setINDIFocusSpeed()</function> et <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fonctions de filtrage : fonctions pour contrôler la position du filtre.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function> : changer la position du filtre en <varname>filter_num</varname>. L'utilisateur peut assigner des alias aux numéros des filtres dans la boîte de dialogue <guimenuitem>Configuration d'INDI</guimenuitem> sous le menu <guimenu>Périphériques</guimenu> (&pex; Filter 1 = Red, Filter 2 = Green..etc).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function> : changer la position du filtre en <varname>filter_num</varname>. L'utilisateur peut assigner des alias aux numéros des filtres dans la boîte de dialogue <guimenuitem>Configuration d'INDI</guimenuitem> sous le menu <guimenu>Périphériques</guimenu> (&pex; Filter 1 = Red, Filter 2 = Green..etc).</para></listitem>
</itemizedlist>
</listitem>

@ -206,16 +206,16 @@
<para>Vous pouvez obtenir une liste de toutes les interfaces &DCOP; disponibles. Utilisez l'argument correspondant, comme indiqué dans cet exemple : <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -1666,8 +1666,8 @@
<refpurpose>annuler une alarme déjà programmée.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1709,8 +1709,8 @@
<refpurpose>déclenche une alarme déjà programmée.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1754,8 +1754,8 @@
<refpurpose>déclenche ou annule une alarme déjà programmée.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>calendarFile</replaceable>,
const QString&amp; <replaceable>eventID</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>calendarFile</replaceable>,
const TQString&amp; <replaceable>eventID</replaceable>)
</synopsis>
<refsect2>
@ -1805,43 +1805,43 @@
<refpurpose>programme un nouveau message d'alarme</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>, int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const QString&amp; <replaceable>fgColor</replaceable>,
const QString&amp; <replaceable>font</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>fgColor</replaceable>,
const TQString&amp; <replaceable>font</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -1878,7 +1878,7 @@
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Indique la couleur de fond pour l'affichage du message. La chaîne peut être dans le format « #RRGGBB » (comme retourné par <methodname>QColor::name()</methodname>), où « RR », « GG » et « BB » sont des valeurs hexadécimales à deux chiffres pour « red » (rouge), « green » (vert) et « blue » (bleu). Sinon, la chaîne peut être dans n'importe lequel des autres formats acceptés par <methodname>QColor::setNamedColor()</methodname>, comme un nom tiré de la base de données des couleurs X (&pex; « red » (rouge) ou « steelblue » (bleu acier). Donnez à la chaîne une valeur nulle pour spécifier la couleur de fond par défaut actuelle.</para>
<para>Indique la couleur de fond pour l'affichage du message. La chaîne peut être dans le format « #RRGGBB » (comme retourné par <methodname>TQColor::name()</methodname>), où « RR », « GG » et « BB » sont des valeurs hexadécimales à deux chiffres pour « red » (rouge), « green » (vert) et « blue » (bleu). Sinon, la chaîne peut être dans n'importe lequel des autres formats acceptés par <methodname>TQColor::setNamedColor()</methodname>, comme un nom tiré de la base de données des couleurs X (&pex; « red » (rouge) ou « steelblue » (bleu acier). Donnez à la chaîne une valeur nulle pour spécifier la couleur de fond par défaut actuelle.</para>
</listitem>
</varlistentry>
@ -1980,21 +1980,21 @@
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
@ -2002,15 +2002,15 @@
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>bgColor</replaceable>,
const TQString&amp; <replaceable>bgColor</replaceable>,
const KURL&amp; <replaceable>audioURL</replaceable>,
int <replaceable>reminder</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2047,7 +2047,7 @@
<varlistentry>
<term><parameter>bgColor</parameter></term>
<listitem>
<para>Indique la couleur de fond pour l'affichage du fichier. La chaîne peut être dans le format « #RRGGBB » (comme retourné par <methodname>QColor::name()</methodname>) où « RR », « GG » et « BB » sont des valeurs hexadécimales à deux chiffres pour « red » (rouge), « green » (vert) et « blue » (bleu). Sinon, la chaîne peut être dans n'importe lequel des autres formats acceptés par <methodname>QColor::setNamedColor()</methodname>, comme un nom tiré de la base de données des couleurs X (&pex; « red » (rouge) ou « steelblue » (bleu acier). Donnez à la chaîne une valeur nulle pour spécifier la couleur de fond par défaut actuelle.</para>
<para>Indique la couleur de fond pour l'affichage du fichier. La chaîne peut être dans le format « #RRGGBB » (comme retourné par <methodname>TQColor::name()</methodname>) où « RR », « GG » et « BB » sont des valeurs hexadécimales à deux chiffres pour « red » (rouge), « green » (vert) et « blue » (bleu). Sinon, la chaîne peut être dans n'importe lequel des autres formats acceptés par <methodname>TQColor::setNamedColor()</methodname>, comme un nom tiré de la base de données des couleurs X (&pex; « red » (rouge) ou « steelblue » (bleu acier). Donnez à la chaîne une valeur nulle pour spécifier la couleur de fond par défaut actuelle.</para>
</listitem>
</varlistentry>
@ -2133,29 +2133,29 @@
<refpurpose>programme une nouvelle alarme qui exécute une commande shell.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandLine</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandLine</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endDateTime</replaceable>)
const TQString&amp; <replaceable>endDateTime</replaceable>)
</synopsis>
<refsect2>
@ -2257,41 +2257,41 @@
<refpurpose>programme une nouvelle alarme qui envoie un message électronique.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
const QString&amp; <replaceable>recurrence</replaceable>,
const TQString&amp; <replaceable>recurrence</replaceable>,
int <replaceable>simpleRepeatInterval</replaceable>,
int <replaceable>simpleRepeatCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
int <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
int <replaceable>recurCount</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>fromID</replaceable>,
const QString&amp; <replaceable>addresses</replaceable>,
const QString&amp; <replaceable>subject</replaceable>,
const QString&amp; <replaceable>message</replaceable>,
const QString&amp; <replaceable>attachments</replaceable>,
const QString&amp; <replaceable>dateTime</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>fromID</replaceable>,
const TQString&amp; <replaceable>addresses</replaceable>,
const TQString&amp; <replaceable>subject</replaceable>,
const TQString&amp; <replaceable>message</replaceable>,
const TQString&amp; <replaceable>attachments</replaceable>,
const TQString&amp; <replaceable>dateTime</replaceable>,
int <replaceable>lateCancel</replaceable>,
nt <replaceable>flags</replaceable>,
int <replaceable>recurType</replaceable>,
int <replaceable>recurInterval</replaceable>,
const QString&amp; <replaceable>endTime</replaceable>)
const TQString&amp; <replaceable>endTime</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
<refpurpose>Renvoi la version de &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
<refpurpose>Renvoi la fermeture de &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
<refpurpose>Vérifie si une tâche principale existe.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString nom_de_la_tâche)
<synopsis>TQString hastodo(TQString nom_de_la_tâche)
</synopsis>
<refsect2>
<title>Paramètres</title>
@ -786,7 +786,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
</refsynopsisdiv>
<refsect1>
<title>Description</title>
<para><function>hastodo(QString nom_de_la_tâche)</function> est un appel &DCOP; qui recherche une tâche portant un nom précis. Si ce nom est trouvé, un UID iCalendar est renvoyé pour identifier cette tâche. Sinon, une chaîne vide est renvoyée. </para>
<para><function>hastodo(TQString nom_de_la_tâche)</function> est un appel &DCOP; qui recherche une tâche portant un nom précis. Si ce nom est trouvé, un UID iCalendar est renvoyé pour identifier cette tâche. Sinon, une chaîne vide est renvoyée. </para>
<para>C'est dans le fichier iCalendar utilisé actuellement par &karm; que la recherche est faites. Elle porte sur toute l'arborescence, pas seulement sur les tâches principales. Si plusieurs tâches correspondent, c'est la première trouvée qui est renvoyée.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
<refpurpose>Ajouter une nouvelle tâche.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString tâche_à_ajouter)
<synopsis>TQString addtodo(TQString tâche_à_ajouter)
</synopsis>
<refsect2>
<title>Paramètres</title>
@ -817,7 +817,7 @@ Imprimé le&nbsp;: 13/07/2004 18:10
<refsect1>
<title>Description</title>
<para><function>addtodo(QString tâche_à_faire)</function> est un appel &DCOP; qui ajoute une tâche principale au fichier en cours d'utilisation. L'UID de la nouvelle tâche est renvoyé. </para>
<para><function>addtodo(TQString tâche_à_faire)</function> est un appel &DCOP; qui ajoute une tâche principale au fichier en cours d'utilisation. L'UID de la nouvelle tâche est renvoyé. </para>
</refsect1>
</refentry>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Conversion rapide <classname>QImage</classname> en <classname>QPixmap</classname>. </para>
<para>Conversion rapide <classname>TQImage</classname> en <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Le modèle d'imagerie bas niveau de Qt est basé sur les possibilités fournies par X11 et d'autres systèmes de fenêtrage pour lesquels des ports Qt existent. Mais il les étend également en implémentant des fonctionnalités additionnelles telles que les transformations affines arbitraires pour le texte et les pixmaps. </para>
<para>La classe graphique centrale pour le dessin en 2D avec Qt est <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Elle peut dessiner sur un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Il y a trois périphériques de dessin possibles implémentés : l'un est <ulink url="kdeapi:qt/QWidget">QWidget</ulink> qui représente un widget sur l'écran. Le deuxième est <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> qui représente une imprimante et produit une sortie Postscript. Le troisième est la classe <ulink url="kdeapi:qt/QPicture">QPicture</ulink> qui enregistre les commandes de dessin, peut les enregistrer sur disque et les lire plus tard. Un format possible de stockage pour le dessin est le standard SVG du W3C. </para>
<para>La classe graphique centrale pour le dessin en 2D avec Qt est <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Elle peut dessiner sur un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Il y a trois périphériques de dessin possibles implémentés : l'un est <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink> qui représente un widget sur l'écran. Le deuxième est <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> qui représente une imprimante et produit une sortie Postscript. Le troisième est la classe <ulink url="kdeapi:qt/QPicture">QPicture</ulink> qui enregistre les commandes de dessin, peut les enregistrer sur disque et les lire plus tard. Un format possible de stockage pour le dessin est le standard SVG du W3C. </para>
<para>Il est donc possible de réutiliser le code de rendu pour afficher un widget pour l'impression, avec les mêmes fonctionnalités prises en charge. Bien sûr, en pratique, le code est utilisé dans un contexte légèrement différent. Le dessin sur un widget est presque exclusivement exécuté dans la méthode paintEvent() d'une classe de widget. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle) &mdash; crée une brosse noire avec un des motifs par défaut illustrés ci-dessous.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle) &mdash; crée une brosse colorée avec un des motifs illustrés ci-dessous.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle) &mdash; crée une brosse colorée avec un des motifs illustrés ci-dessous.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) &mdash; crée une brosse colorée avec le motif personnalisé que vous indiquez comme second paramètre.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) &mdash; crée une brosse colorée avec le motif personnalisé que vous indiquez comme second paramètre.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Couleur</title>
<para>Les couleurs jouent un rôle à la fois lors de la frappe des courbes et lors du remplissage des formes. Dans Qt, les couleurs sont représentées par la classe <ulink url="kdeapi:qt/QColor">QColor</ulink>. Qt ne prend en charge aucune fonctionnalité graphique avancée comme les profils de couleur ICC (<emphasis>International Color Consortium</emphasis>) et la correction des couleurs. Les couleurs sont habituellement construites en spécifiant leurs composantes rouge, verte et bleue, puisque le modèle RVB est la manière dont sont composés les pixels sur un moniteur. </para>
<para>Les couleurs jouent un rôle à la fois lors de la frappe des courbes et lors du remplissage des formes. Dans Qt, les couleurs sont représentées par la classe <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. Qt ne prend en charge aucune fonctionnalité graphique avancée comme les profils de couleur ICC (<emphasis>International Color Consortium</emphasis>) et la correction des couleurs. Les couleurs sont habituellement construites en spécifiant leurs composantes rouge, verte et bleue, puisque le modèle RVB est la manière dont sont composés les pixels sur un moniteur. </para>
<para>Il est également possible d'utiliser une teinte, une saturation et une valeur. Cette représentation HSV est ce dont vous vous servez dans la boîte des couleurs Gtk, &pex; dans Le GIMP. Ici, la teinte correspond à l'angle sur la roue de couleurs, alors que la saturation correspond à la distance depuis le centre du cercle. La valeur peut être choisie avec un curseur séparé. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> corrrespond directement aux objets pixmaps dans X11. Les pixmaps sont des objets côté serveur et peuvent &mdash; sur une carte graphique moderne &mdash; même être enregistrés directement dans la mémoire de la carte. Ce comportement la rend <emphasis>très</emphasis> efficace pour transférer les pixmaps à l'écran. Les pixmaps agissent aussi comme l'équivalent d'un hors-écran de widgets &mdash; la classe QPixmap étant une sous-classe de QPaintDevice, vous pouvez dessiner dessus avec un QPainter. Les opérations de dessin élémentaires sont habituellement accélérées par les cartes graphiques modernes. Par conséquent, un motif d'usage courant est d'utiliser les pixmaps pour le double tamponnement. Cela signifie que, au lieu de peindre directement sur un widget, vous peignez sur un objet pixmap temporaire et que vous employez la fonction <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> pour transférer le pixmap au widget. Pour des retraçages complexes, cette astuce permet d'éviter le papillottement. </para>
<para>En revanche, les objets <ulink url="kdeapi:qt/QImage">QImage</ulink> résident côté client. Ils se distinguent en fournissant un accès direct aux pixels de l'image. Ce comportement explique leur utilisation dans la manipulation des images, ainsi que les tâches comme le chargement et l'enregistrement sur disque (la méthode load() de QPixmap considère QImage comme une étape intermédiaire). Par ailleurs, le traçage d'une image sur un widget est une opération relativement coûteuse car elle implique un transfert vers le serveur X qui peut prendre du temps, en particulier pour les images de grandes dimensions et pour les serveurs distants. En fonction de la profondeur de couleur, la conversion de QImage en QPixmap peut aussi exiger un tramage. </para>
<para>En revanche, les objets <ulink url="kdeapi:qt/TQImage">TQImage</ulink> résident côté client. Ils se distinguent en fournissant un accès direct aux pixels de l'image. Ce comportement explique leur utilisation dans la manipulation des images, ainsi que les tâches comme le chargement et l'enregistrement sur disque (la méthode load() de QPixmap considère TQImage comme une étape intermédiaire). Par ailleurs, le traçage d'une image sur un widget est une opération relativement coûteuse car elle implique un transfert vers le serveur X qui peut prendre du temps, en particulier pour les images de grandes dimensions et pour les serveurs distants. En fonction de la profondeur de couleur, la conversion de TQImage en QPixmap peut aussi exiger un tramage. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Traçage du texte</title>
<para>Le texte peut être tracé avec une des variantes saturées de la méthode QPainter::drawText(). Celles-ci dessinent une QString soit à un point donné, soit dans un rectangle donné, en utilisant la police définie par QPainter::setFont(). Il y a également un paramètre qui prend une combinaison OU exclusif de certaines drapeaux à partir des énumérations <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> et <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>Le texte peut être tracé avec une des variantes saturées de la méthode QPainter::drawText(). Celles-ci dessinent une TQString soit à un point donné, soit dans un rectangle donné, en utilisant la police définie par QPainter::setFont(). Il y a également un paramètre qui prend une combinaison OU exclusif de certaines drapeaux à partir des énumérations <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> et <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>En commençant par la version 3.0, Qt tient compte de la disposition complète du texte, même pour les langues qui s'écrivent de droite à gauche. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>En plus des lignes habituelles, cet exemple explique comment déclarer qu'un service a certaines propriétés. Chaque définition de propriété correspond à un groupe <literal>[PropertyDef::name]</literal> dans le fichier de configuration. Dans ce groupe, la ligne <literal>Type</literal> déclare le type de la propriété. Les types possibles sont tout ce qui peut être enregistré dans une <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Une fois l'objet <classname>KService</classname> en main, vous pouvez très simplement charger la bibliothèque et obtenir un pointeur vers son objet fabrique : </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("Une erreur de chargement de service % s'est produite1.\n"
"Le diagnostic de libtool est :\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Le démarrage de kioserver a échoué avec le message " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>Dans l'exemple donné ici, le service a été démarré « par nom », &cad; que le premier argument vers <function>TDEApplication::startServiceByName()</function> est le nom qui apparaît dans la ligne <literal>Name</literal> du fichier desktop. Une alternative consiste à utiliser <function>TDEApplication::startServiceByDesktopName()</function>, qui prend le nom de fichier de son fichier desktop comme argument, &cad; dans ce cas, <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Tous ces appels prennent une liste d'URL comme deuxième argument, fourni au service sur la ligne de commande. Le troisième argument est un pointeur vers une <classname>QString</classname>. Si le démarrage du service échoue, cet argument devient un message d'erreur traduit. </para>
<para>Tous ces appels prennent une liste d'URL comme deuxième argument, fourni au service sur la ligne de commande. Le troisième argument est un pointeur vers une <classname>TQString</classname>. Si le démarrage du service échoue, cet argument devient un message d'erreur traduit. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Bien sûr, même KMimeMagic n'est capable de déterminer un type de fichier qu'à partir du contenu d'un fichier local. Pour les fichiers distants, il y a une autre possibilité : </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Impossible de découvrir le type" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Obtention d'une icône pour une URL. Celle-ci cherche le type de l'URL et retourne l'icône associée. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Exécution d'une URL. Celle-ci cherche le type de l'URL et démarre le programme préféré de l'utilisateur et associé à ce type. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Renomme un fichier. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Crée un lien symbolique. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// load the file with the name tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Dernière modification : " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Crée un lien symbolique.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -4059,5 +4059,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Active/désactive la barre d'état"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -7413,8 +7413,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"L'héritage multiple nécessite que la dérivée de « TQObject » soit la "
"première et l'unique dans la liste des classes de base."
"L'héritage multiple nécessite que la dérivée de « TQObject » soit la première "
"et l'unique dans la liste des classes de base."
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -29843,19 +29843,19 @@ msgstr "Certificat de confiance SSL"
#~ msgid "Yes, &delayed"
#~ msgstr "Oui, mais &non immédiatement"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Style Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Style Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Saisissez la classe de base de laquelle dérive votre nouvelle classe. Si "
#~ "vous avez coché l'option « Générer une classe fille de QWidget », la "
#~ "nouvelle classe dérivera de la classe « QWidget ». Si aucune classe de "
#~ "vous avez coché l'option « Générer une classe fille de TQWidget », la "
#~ "nouvelle classe dérivera de la classe « TQWidget ». Si aucune classe de "
#~ "base n'est indiquée, la nouvelle classe n'aura pas de classe parent. Vous "
#~ "pouvez aussi employer ici un modéle de classe (comme « ClasseDeBase<int, "
#~ "int> »)"

@ -3914,5 +3914,5 @@ msgstr ""
#~ msgid "Branch/merge"
#~ msgstr "Craobhaigh/cumaisc"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -4007,5 +4007,5 @@ msgstr ""
#~ msgid "new_stereotype"
#~ msgstr "novo_estereotipo"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -54,8 +54,8 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"זהו הצבע הנוכחי בתצוגת כחול־ירוק־אדום הקסדצימלית, כפי שאתה עשוי להשתמש בו ב־"
"HTML או בתור שם TQColor. רקע המלבן מציג את צבע הפיקסל שבתוך הריבוע הקטן "
"שבקצה החץ המצביע."
"HTML או בתור שם TQColor. רקע המלבן מציג את צבע הפיקסל שבתוך הריבוע הקטן שבקצה "
"החץ המצביע."
#: klineal.cpp:147
msgid "KRuler"

@ -4258,5 +4258,5 @@ msgstr ""
#~ msgid "Use diagram colors"
#~ msgstr "आरेख रंग इस्तेमाल करें"
#~ msgid "QString"
#~ msgid "TQString"
#~ msgstr "क्यू-स्ट्रिंग"

@ -50,7 +50,7 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"Ovo je trenutna boja prezentovana u heksadecimalnom rgb formatu, kao što je "
"možete koristiti u HTML-u ili kao QColor ime. Pravokutna pozadina pokazuje "
"možete koristiti u HTML-u ili kao TQColor ime. Pravokutna pozadina pokazuje "
"boju piksela unutar malog kvadrata na kraju kursora linije."
#: klineal.cpp:147

@ -4572,6 +4572,5 @@ msgstr ""
#~ msgid "Cannot create the package folder:\n"
#~ msgstr "Ne mogu napraviti direktorij paketa:\n"
#, fuzzy
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -7264,8 +7264,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"Višestruko nasleđivanje zahtjeva da izvod TQObject-a bude prvi i jedinstven "
"u listi baznih klasa."
"Višestruko nasleđivanje zahtjeva da izvod TQObject-a bude prvi i jedinstven u "
"listi baznih klasa."
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -31968,14 +31968,14 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Ubacite baznu klasu iz koje će vaša nova klasa biti izvedena. Ako ste "
#~ "uključili „Generiraj dečju klasu QWidget-a“, nova klasa će biti izvedena "
#~ "iz QWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "uključili „Generiraj dečju klasu TQWidget-a“, nova klasa će biti izvedena "
#~ "iz TQWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "roditeljsku klasu. Ovdje također možete da koristite šablonske klase "
#~ "(npr. BaseClass<int, int>)"

@ -4005,5 +4005,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Ki-be kapcsolja az állapotsort"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -30203,14 +30203,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Annak az osztálynak a nevét kell itt megadni, amelyből az új osztályt "
#~ "származtatni szeretné. Ha be van jelölve a 'Az osztály a QWidgetből "
#~ "származzon', akkor az új osztály a QWidget osztályból lesz származtatva. "
#~ "származzon', akkor az új osztály a TQWidget osztályból lesz származtatva. "
#~ "Ha nincs megadva szülőosztály, akkor az új osztálynak nem lesz "
#~ "szülőosztálya. Sablonosztályokat is lehet használni (pl. Alaposztály "
#~ "<int, int>)"

@ -31317,8 +31317,8 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr "Setja inn kerfi nýtt nýtt nei kerfi nýtt a Þú<int, int>"

@ -460,7 +460,7 @@
<term><userinput>(?!MODELLO)</userinput> (Lookahead negativo)</term>
<listitem><para>Il lookahead negativo impedisce una potenziale corrispondenza se la parte seguente della stringa in esame non corrisponde al <emphasis>MODELLO</emphasis>.</para>
<para>L'espressione <userinput>const \w+\b(?!\s*&amp;)</userinput> corrisponde a <quote>const char</quote> nella stringa <quote>const char* foo</quote> mentre non corrisponde a <quote>const QString</quote> in <quote>const QString&amp; bar</quote> perché <quote>&amp;</quote> corrisponde al modello dell'asserzione di lookahead negativo.</para>
<para>L'espressione <userinput>const \w+\b(?!\s*&amp;)</userinput> corrisponde a <quote>const char</quote> nella stringa <quote>const char* foo</quote> mentre non corrisponde a <quote>const TQString</quote> in <quote>const TQString&amp; bar</quote> perché <quote>&amp;</quote> corrisponde al modello dell'asserzione di lookahead negativo.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Sto caricando KDE
<para>Prima che l'applicazione inizi intensivi cicli di calcolo, o prima di caricare i plugin, &etc;, invoca &ksplash; nel seguente modo:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -530,8 +530,8 @@ if (kapp-&gt;startServiceByDesktopName("ksplash", args, &amp;error, &amp;KSplash
<para>Quando vuoi mostrare un messaggio con o senza un'icona, usa</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt; QString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(QString,QString,QString)", data))
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt; TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface", "programStarted(TQString,TQString,TQString)", data))
{
// Processamento degli errori qui .
}
@ -596,7 +596,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Le classi dei plugin devono avere una funzione <literal>static</literal> chiamata <function>names</function> che ritorna una lista di nomi attraverso i quali possono essere invocate.</para></listitem>
<listitem><para>Se il plugin può essere configurato nel modulo del centro di controllo, dovrebbe provvedere una classe basata su <literal>ThemeEngineConfig </literal> per la configurazione.</para></listitem>
<listitem><para>Le classi dei plugin devono sovrascrivere almeno una delle seguenti funzioni <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> e <function>slotUpdateSteps</function> per renderle funzionanti.</para></listitem>
<listitem><para>Il costruttore deve prendere la forma <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> di modo che possa essere usato con la classe <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Il costruttore deve prendere la forma <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> di modo che possa essere usato con la classe <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>L'ultima richiesta può sembrare complicata ma, come vedremo dopo, aggiungendo una singola linea al tuo file sorgente, puoi ignorarla.</para>
</sect1>
@ -629,11 +629,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -650,7 +650,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -661,15 +661,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analizziamo il listato precedente. La classe <classname>Theme2k</classname> soddisfa la convenzione di nomi voluta, ed è ereditata dalla classe <classname>ThemeEngine</classname>. Fornisce un metodo <methodname>Theme2k::names()</methodname>, ed ha un costruttore che prende i parametri richiesti: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> e fornisce un semplice metodo <methodname>Theme2k::slotSetText()</methodname>. Per il momento non dobbiamo preoccuparci della classe <classname>RotWidget</classname>. Si tratta di un piccolo widget che fornisce alcuni effetti grafici. Il nostro plugin è molto semplice e non mostra icone o barre di progresso. Se vuoi mostrare delle icone devi overloadare la funzione <function>slotSetPixmap </function>. Funzioni simili esistono per impostare l'intervallo della barra di progresso (<function>slotUpdateSteps</function>) e incrementare il passo corrente (<function>slotUpdateProgress</function>). </para>
<para>Analizziamo il listato precedente. La classe <classname>Theme2k</classname> soddisfa la convenzione di nomi voluta, ed è ereditata dalla classe <classname>ThemeEngine</classname>. Fornisce un metodo <methodname>Theme2k::names()</methodname>, ed ha un costruttore che prende i parametri richiesti: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> e fornisce un semplice metodo <methodname>Theme2k::slotSetText()</methodname>. Per il momento non dobbiamo preoccuparci della classe <classname>RotWidget</classname>. Si tratta di un piccolo widget che fornisce alcuni effetti grafici. Il nostro plugin è molto semplice e non mostra icone o barre di progresso. Se vuoi mostrare delle icone devi overloadare la funzione <function>slotSetPixmap </function>. Funzioni simili esistono per impostare l'intervallo della barra di progresso (<function>slotUpdateSteps</function>) e incrementare il passo corrente (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Implementazione dei plugin</title>
@ -682,7 +682,7 @@ private:
<para>La macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> è dichiarata in <filename>kgenericfactory.h</filename>. E ora il costruttore! Dato che questo plugin è super semplice, il costruttore è alquanto semplice.</para>
<example>
<title>Costruttore del plugin</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args )
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args )
:ThemeEngine( parent, name, args )
{
readSettings();
@ -702,23 +702,23 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color", &amp;DefaultTBgColor );
mTFgColor = cfg-&gt;readColorEntry( "Title Foreground Color", &amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -830,7 +830,7 @@ K_EXPORT_COMPONENT_FACTORY( libksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args )
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args )
:ThemeEngine( parent, name, args )
{
readSettings();
@ -853,7 +853,7 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() + (mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() + (mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -894,23 +894,23 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color", &amp;DefaultTBgColor );
mTFgColor = cfg-&gt;readColorEntry( "Title Foreground Color", &amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -929,11 +929,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -944,7 +944,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -967,8 +967,8 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp; c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp; c2, int sp )
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Funzioni DCOP</title>
<para>L'interfaccia <abbrev>DCOP</abbrev> di &kstars; include le seguenti funzioni: <itemizedlist>
<listitem><para><function> lookTowards( cost QString direzione)</function>: punta il display nella direzione specificata dall'argomento. Può trattarsi del nome di un qualsiasi oggetto celeste, o di una delle seguenti parole o abbreviazioni: zenith (o z), per lo zenit, north (n) per il nord, northeast (ne) per il nordest, east (e) per l'est, southeast (se) per il sudest, south (s) per il sud, southwest(sw) per il sudovest, west(w) per l'ovest, northwest (nw) per il nordovest. </para></listitem>
<listitem><para><function> lookTowards( cost TQString direzione)</function>: punta il display nella direzione specificata dall'argomento. Può trattarsi del nome di un qualsiasi oggetto celeste, o di una delle seguenti parole o abbreviazioni: zenith (o z), per lo zenit, north (n) per il nord, northeast (ne) per il nordest, east (e) per l'est, southeast (se) per il sudest, south (s) per il sud, southwest(sw) per il sudovest, west(w) per l'ovest, northwest (nw) per il nordovest. </para></listitem>
<listitem><para><function> setRaDec( double ar, double dec )</function>: centra il display sulle coordinate equatoriali specificate. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: attende t secondi prima di continuare con i comandi successivi. </para></listitem>
<listitem><para><function> waitForKey( cost QString k )</function>: arresta l'esecuzione dello script fino a quando l'utente non preme il tasto specificato. Attualmente non è possibile specificare una combinazione di tasti (come <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); limitati a usare tasti semplici. Puoi digitare <quote>space</quote> per indicare la barra spaziatrice. </para></listitem>
<listitem><para><function> waitForKey( cost TQString k )</function>: arresta l'esecuzione dello script fino a quando l'utente non preme il tasto specificato. Attualmente non è possibile specificare una combinazione di tasti (come <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); limitati a usare tasti semplici. Puoi digitare <quote>space</quote> per indicare la barra spaziatrice. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: attiva/disattiva l'inseguimento. </para></listitem>
<listitem><para><function> changeViewOption( cost QString opzione, cost QString valore )</function>: modifica un'opzione di visualizzazione. Ci sono decine di opzioni disponibili; praticamente tutto ciò che si può cambiare nella finestra <guilabel>Configura &kstars;</guilabel> può essere cambiato anche qui. Il primo argomento è il nome dell'opzione (i nomi sono presi dal file di configurazione <filename>kstarsrc</filename>), e il secondo è il valore desiderato. L'interprete degli argomenti è stato progettato per essere robusto, quindi dovrebbe arrestarsi senza conseguenze qualora riceva dati non validi. </para></listitem>
<listitem><para><function> changeViewOption( cost TQString opzione, cost TQString valore )</function>: modifica un'opzione di visualizzazione. Ci sono decine di opzioni disponibili; praticamente tutto ciò che si può cambiare nella finestra <guilabel>Configura &kstars;</guilabel> può essere cambiato anche qui. Il primo argomento è il nome dell'opzione (i nomi sono presi dal file di configurazione <filename>kstarsrc</filename>), e il secondo è il valore desiderato. L'interprete degli argomenti è stato progettato per essere robusto, quindi dovrebbe arrestarsi senza conseguenze qualora riceva dati non validi. </para></listitem>
<listitem><para><function> setGeoLocation( cost QString città, cost QString provincia, cost QString nazione )</function>: imposta la città specificata come località di osservazione. Se non viene trovata alcuna città corrispondente agli argomenti, il comando è ignorato. </para></listitem>
<listitem><para><function> setGeoLocation( cost TQString città, cost TQString provincia, cost TQString nazione )</function>: imposta la città specificata come località di osservazione. Se non viene trovata alcuna città corrispondente agli argomenti, il comando è ignorato. </para></listitem>
<listitem><para><function> stop()</function> [orologio]: arresta l'orologio della simulazione. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Funzioni generiche di periferica: hanno lo scopo di accendere/spegnere periferiche, e così via...</para>
<itemizedlist>
<listitem><para><function>startINDI (QString nomePeriferica, bool usaLocale)</function>: avvia un servizio INDI in modalità locale o server.</para></listitem>
<listitem><para><function>shutdownINDI (QString nomePeriferica)</function>: arresta un servizio INDI.</para></listitem>
<listitem><para><function>switchINDI(QString nomePeriferica, bool accesoSpento)</function>: connette o disconnette una periferica INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString nomePeriferica, QString porta)</function>: imposta la porta di connessione della periferica.</para></listitem>
<listitem><para><function>setINDIAction(QString nomePeriferica, QString azione)</function>: attiva un'azione INDI. L'azione può essere un <emphasis>elemento</emphasis> qualsiasi di una <emphasis>proprietà interruttore</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(QString nomePeriferica, QString azione)</function>: arresta l'esecuzione dello script fino a quando la <emphasis>proprietà</emphasis> dell'azione specificata restituisce uno stato OK.</para></listitem>
<listitem><para><function>startINDI (TQString nomePeriferica, bool usaLocale)</function>: avvia un servizio INDI in modalità locale o server.</para></listitem>
<listitem><para><function>shutdownINDI (TQString nomePeriferica)</function>: arresta un servizio INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString nomePeriferica, bool accesoSpento)</function>: connette o disconnette una periferica INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString nomePeriferica, TQString porta)</function>: imposta la porta di connessione della periferica.</para></listitem>
<listitem><para><function>setINDIAction(TQString nomePeriferica, TQString azione)</function>: attiva un'azione INDI. L'azione può essere un <emphasis>elemento</emphasis> qualsiasi di una <emphasis>proprietà interruttore</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(TQString nomePeriferica, TQString azione)</function>: arresta l'esecuzione dello script fino a quando la <emphasis>proprietà</emphasis> dell'azione specificata restituisce uno stato OK.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funzioni telescopio: servono a controllare il movimento e lo stato del telescopio.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString nomePeriferica, QString azione)</function>: imposta la modalità o l'azione del telescopio. Le opzioni disponibili sono SLEW, TRACK, SYNC, PARK e ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString nomePeriferica, double AR, double DEC)</function>: imposta le coordinate JNow del telescopio ai valori <emphasis>AR</emphasis> e <emphasis>DEC</emphasis> specificati.</para></listitem>
<listitem><para><function>setINDITargetName(QString nomePeriferica, QString nomeOggetto)</function>: imposta le coordinate JNow del telescopio a quelle di <emphasis>nomeOggetto</emphasis>. KStars cercherà l'oggetto nel proprio database e ne utilizzerà le coordinate.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString nomePeriferica, double longitudine, double latitudine)</function>: imposta la località geografica del telescopio alla latitudine e longitudine specificate. La longitudine è calcolata da Greenwich, Regno Unito, verso est. Tuttavia, sebbene sia comune utilizzare longitudini negative per l'emisfero occidentale, INDI richiede valori di longitudine tra 0 e 360 gradi. Perciò, se hai una longitudine negativa, è sufficiente aggiungere 360 gradi per ottenere il valore che INDI si aspetta. Per esempio, le coordinate di Calgary, Canada, in &kstars; sono longitudine -114 04 58 e latitudine 51 02 58. Perciò a INDI va fornita la longitudine 360 - 114,083 = 245,917 gradi.</para></listitem>
<listitem><para><function>setINDIUTC(QString nomePeriferica, QString dataOraUTC)</function>: imposta la data e l'ora UTC del telescopio in formato ISO 8601. Il formato è AAAA-MM-GGTHH:MM:SS (per esempio 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString nomePeriferica, TQString azione)</function>: imposta la modalità o l'azione del telescopio. Le opzioni disponibili sono SLEW, TRACK, SYNC, PARK e ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString nomePeriferica, double AR, double DEC)</function>: imposta le coordinate JNow del telescopio ai valori <emphasis>AR</emphasis> e <emphasis>DEC</emphasis> specificati.</para></listitem>
<listitem><para><function>setINDITargetName(TQString nomePeriferica, TQString nomeOggetto)</function>: imposta le coordinate JNow del telescopio a quelle di <emphasis>nomeOggetto</emphasis>. KStars cercherà l'oggetto nel proprio database e ne utilizzerà le coordinate.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString nomePeriferica, double longitudine, double latitudine)</function>: imposta la località geografica del telescopio alla latitudine e longitudine specificate. La longitudine è calcolata da Greenwich, Regno Unito, verso est. Tuttavia, sebbene sia comune utilizzare longitudini negative per l'emisfero occidentale, INDI richiede valori di longitudine tra 0 e 360 gradi. Perciò, se hai una longitudine negativa, è sufficiente aggiungere 360 gradi per ottenere il valore che INDI si aspetta. Per esempio, le coordinate di Calgary, Canada, in &kstars; sono longitudine -114 04 58 e latitudine 51 02 58. Perciò a INDI va fornita la longitudine 360 - 114,083 = 245,917 gradi.</para></listitem>
<listitem><para><function>setINDIUTC(TQString nomePeriferica, TQString dataOraUTC)</function>: imposta la data e l'ora UTC del telescopio in formato ISO 8601. Il formato è AAAA-MM-GGTHH:MM:SS (per esempio 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funzioni videocamera/CCD: permettono di controllare le proprietà e lo stato della videocamera o del CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString nomePeriferica, int temp)</function>: imposta la temperatura del chip CCD in gradi Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString nomePeriferica, QString tipo)</function>: imposta il tipo di frame del CCD. Le opzioni disponibili sono FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString nomePeriferica, int durata)</function>: avvia l'esposizione del CCD/videocamera per la durata specificata dal parametro omonimo, in secondi.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString nomePeriferica, int temp)</function>: imposta la temperatura del chip CCD in gradi Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString nomePeriferica, TQString tipo)</function>: imposta il tipo di frame del CCD. Le opzioni disponibili sono FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString nomePeriferica, int durata)</function>: avvia l'esposizione del CCD/videocamera per la durata specificata dal parametro omonimo, in secondi.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funzioni focheggiatore: servono a controllare il movimento e lo stato del focheggiatore.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString nomePeriferica, QString azione)</function>: imposta la velocità del focheggiatore. Le opzioni disponibili sono FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString nomePeriferica, int durata)</function>: imposta la durata in secondi di ogni operazione startINDIFocus successiva.</para></listitem>
<listitem><para><function>startINDIFocus(QString nomePeriferica, int dirFuoco)</function>: sposta il focheggiatore verso l'interno (dirFuoco = 0) o l'esterno (dirFuoco = 1). La velocità e durata di questa operazione sono impostate tramite le funzioni <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString nomePeriferica, TQString azione)</function>: imposta la velocità del focheggiatore. Le opzioni disponibili sono FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString nomePeriferica, int durata)</function>: imposta la durata in secondi di ogni operazione startINDIFocus successiva.</para></listitem>
<listitem><para><function>startINDIFocus(TQString nomePeriferica, int dirFuoco)</function>: sposta il focheggiatore verso l'interno (dirFuoco = 0) o l'esterno (dirFuoco = 1). La velocità e durata di questa operazione sono impostate tramite le funzioni <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funzioni filtro: servono a controllare la posizione del filtro.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString nomePeriferica, int num_filtro)</function>: modifica la posizione del filtro a <varname>num_filtro</varname>. L'utente può assegnare nomi ai numeri dei filtri nella finestra <guimenuitem>Configura INDI</guimenuitem> nel menu <guimenu>Periferiche</guimenu> (per esempio, Filtro 1 = Rosso, Filtro 2 = Verde... eccetera).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString nomePeriferica, int num_filtro)</function>: modifica la posizione del filtro a <varname>num_filtro</varname>. L'utente può assegnare nomi ai numeri dei filtri nella finestra <guimenuitem>Configura INDI</guimenuitem> nel menu <guimenu>Periferiche</guimenu> (per esempio, Filtro 1 = Rosso, Filtro 2 = Verde... eccetera).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Puoi ottenere un elenco di tutte le interfacce &DCOP; disponibili usando gli argomenti giusti, come mostrato in questo esempio: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -1685,8 +1685,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>annulla un avviso già pianificato.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>file_calendario</replaceable>,
const QString&amp; <replaceable>identificativo_evento</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>file_calendario</replaceable>,
const TQString&amp; <replaceable>identificativo_evento</replaceable>)
</synopsis>
<refsect2>
@ -1728,8 +1728,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>attiva un avviso già pianificato.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>file_calendario</replaceable>,
const QString&amp; <replaceable>identificativo_evento</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>file_calendario</replaceable>,
const TQString&amp; <replaceable>identificativo_evento</replaceable>)
</synopsis>
<refsect2>
@ -1773,8 +1773,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>attiva o annulla un avviso già pianificato.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>file_calendario</replaceable>,
const QString&amp; <replaceable>identificativo_evento</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>file_calendario</replaceable>,
const TQString&amp; <replaceable>identificativo_evento</replaceable>)
</synopsis>
<refsect2>
@ -1824,44 +1824,44 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>pianifica un nuovo messaggio di avviso.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const QString&amp; <replaceable>colore_primo_piano</replaceable>,
const QString&amp; <replaceable>carattere</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_primo_piano</replaceable>,
const TQString&amp; <replaceable>carattere</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
const QString&amp; <replaceable>ricorrenza</replaceable>,
const TQString&amp; <replaceable>ricorrenza</replaceable>,
int <replaceable>intervallo_sottoripetizione</replaceable>,
int <replaceable>conteggio_sottoripetizione</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const QString&amp; <replaceable>colore_primo_piano</replaceable>,
const QString&amp; <replaceable>carattere</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_primo_piano</replaceable>,
const TQString&amp; <replaceable>carattere</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
int <replaceable>conteggio_ricorrenza</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const QString&amp; <replaceable>colore_primo_piano</replaceable>,
const QString&amp; <replaceable>carattere</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_primo_piano</replaceable>,
const TQString&amp; <replaceable>carattere</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
const QString&amp; <replaceable>data_ora_fine</replaceable>)
const TQString&amp; <replaceable>data_ora_fine</replaceable>)
</synopsis>
<refsect2>
@ -1898,7 +1898,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>colore_sfondo</parameter></term>
<listitem>
<para>Specifica il colore di sfondo con cui visualizzare il messaggio. La stringa può essere nel formato <quote>#RRVVBB</quote> (come restituito da <methodname>QColor::name()</methodname>), dove RR, VV e BB sono valori esadecimali di due cifre di rosso, verde e blu. In alternativa, la stringa può essere in uno qualsiasi dei formati accettati da <methodname>QColor::setNamedColor()</methodname>, come un nome dei colori di X (per esempio <quote>red</quote> o <quote>steelblue</quote>). Imposta una stringa nulla per specificare l'attuale colore di sfondo predefinito.</para>
<para>Specifica il colore di sfondo con cui visualizzare il messaggio. La stringa può essere nel formato <quote>#RRVVBB</quote> (come restituito da <methodname>TQColor::name()</methodname>), dove RR, VV e BB sono valori esadecimali di due cifre di rosso, verde e blu. In alternativa, la stringa può essere in uno qualsiasi dei formati accettati da <methodname>TQColor::setNamedColor()</methodname>, come un nome dei colori di X (per esempio <quote>red</quote> o <quote>steelblue</quote>). Imposta una stringa nulla per specificare l'attuale colore di sfondo predefinito.</para>
</listitem>
</varlistentry>
@ -2000,21 +2000,21 @@ continuously in the background and alarms are always enabled.</para>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
const QString&amp; <replaceable>ricorrenza</replaceable>,
const TQString&amp; <replaceable>ricorrenza</replaceable>,
int <replaceable>intervallo_sottoripetizione</replaceable>,
int <replaceable>conteggio_sottoripetizione</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
@ -2022,10 +2022,10 @@ continuously in the background and alarms are always enabled.</para>
int <replaceable>conteggio_ricorrenza</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>colore_sfondo</replaceable>,
const TQString&amp; <replaceable>colore_sfondo</replaceable>,
const KURL&amp; <replaceable>URL_audio</replaceable>,
int <replaceable>promemoria</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
@ -2067,7 +2067,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>colore_sfondo</parameter></term>
<listitem>
<para>Specifica il colore di sfondo con cui visualizzare il file. La stringa può essere nel formato <quote>#RRVVBB</quote> (come restituito da <methodname>QColor::name()</methodname>), dove RR, VV e BB sono valori esadecimali di due cifre di rosso, verde e blu. In alternativa, la stringa può essere in uno qualsiasi dei formati accettati da <methodname>QColor::setNamedColor()</methodname>, come un nome dei colori di X (per esempio <quote>red</quote> o <quote>steelblue</quote>). Imposta una stringa nulla per specificare l'attuale colore di sfondo predefinito.</para>
<para>Specifica il colore di sfondo con cui visualizzare il file. La stringa può essere nel formato <quote>#RRVVBB</quote> (come restituito da <methodname>TQColor::name()</methodname>), dove RR, VV e BB sono valori esadecimali di due cifre di rosso, verde e blu. In alternativa, la stringa può essere in uno qualsiasi dei formati accettati da <methodname>TQColor::setNamedColor()</methodname>, come un nome dei colori di X (per esempio <quote>red</quote> o <quote>steelblue</quote>). Imposta una stringa nulla per specificare l'attuale colore di sfondo predefinito.</para>
</listitem>
</varlistentry>
@ -2153,29 +2153,29 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>pianifica un nuovo avviso che esegue un comando di shell.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>riga_comando</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>riga_comando</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>ricorrenza</replaceable>,
const TQString&amp; <replaceable>ricorrenza</replaceable>,
int <replaceable>intervallo_sottoripetizione</replaceable>,
int <replaceable>conteggio_sottoripetizione</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>riga_comando</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>riga_comando</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
int <replaceable>conteggio_ricorrenza</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>riga_comando</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>riga_comando</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
const QString&amp; <replaceable>data_ora_fine</replaceable>)
const TQString&amp; <replaceable>data_ora_fine</replaceable>)
</synopsis>
<refsect2>
@ -2277,41 +2277,41 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>pianifica un nuovo avviso che invia un messaggio di posta.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>identità_mittente</replaceable>,
const QString&amp; <replaceable>indirizzi</replaceable>,
const QString&amp; <replaceable>oggetto</replaceable>,
const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>allegati</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>identità_mittente</replaceable>,
const TQString&amp; <replaceable>indirizzi</replaceable>,
const TQString&amp; <replaceable>oggetto</replaceable>,
const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>allegati</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
const QString&amp; <replaceable>ricorrenza</replaceable>,
const TQString&amp; <replaceable>ricorrenza</replaceable>,
int <replaceable>intervallo_sottoripetizione</replaceable>,
int <replaceable>conteggio_sottoripetizione</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>identità_mittente</replaceable>,
const QString&amp; <replaceable>indirizzi</replaceable>,
const QString&amp; <replaceable>oggetto</replaceable>,
const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>allegati</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>identità_mittente</replaceable>,
const TQString&amp; <replaceable>indirizzi</replaceable>,
const TQString&amp; <replaceable>oggetto</replaceable>,
const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>allegati</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
int <replaceable>conteggio_ricorrenza</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>identità_mittente</replaceable>,
const QString&amp; <replaceable>indirizzi</replaceable>,
const QString&amp; <replaceable>oggetto</replaceable>,
const QString&amp; <replaceable>messaggio</replaceable>,
const QString&amp; <replaceable>allegati</replaceable>,
const QString&amp; <replaceable>data_ora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>identità_mittente</replaceable>,
const TQString&amp; <replaceable>indirizzi</replaceable>,
const TQString&amp; <replaceable>oggetto</replaceable>,
const TQString&amp; <replaceable>messaggio</replaceable>,
const TQString&amp; <replaceable>allegati</replaceable>,
const TQString&amp; <replaceable>data_ora</replaceable>,
int <replaceable>ritardo_annullamento</replaceable>,
int <replaceable>flag</replaceable>,
int <replaceable>tipo_ricorrenza</replaceable>,
int <replaceable>intervallo_ricorrenza</replaceable>,
const QString&amp; <replaceable>data_ora_fine</replaceable>)
const TQString&amp; <replaceable>data_ora_fine</replaceable>)
</synopsis>
<refsect2>
@ -2440,7 +2440,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Visualizza la <link linkend="alarm-edit-dlg">finestra di modifica degli avvisi</link> per modificale un avviso.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>identificativo_evento</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>identificativo_evento</replaceable>)
</synopsis>
<refsect2>
@ -2478,7 +2478,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Visualizza la <link linkend="alarm-edit-dlg">finestra di modifica degli avvisi</link> per inserirne uno nuovo.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>nome_modello</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>nome_modello</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Generato il: 2004-07-13 18:10
<refpurpose>Restituisce la versione di &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Generato il: 2004-07-13 18:10
<refpurpose>Restituisce l'uscita di &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Generato il: 2004-07-13 18:10
<refpurpose>Verifica che esista una cosa da fare principale.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString taskname)
<synopsis>TQString hastodo(TQString taskname)
</synopsis>
<refsect2>
<title>parametri</title>
@ -786,7 +786,7 @@ Generato il: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Descrizione</title>
<para><function>hastodo(QString taskname)</function> è una chiamata &DCOP; che cerca un'attività con il nome dato. Se la trova restituisce l'UID iCalendar che identifica quell'attività. Se non lo trova, restituisce una stringa vuota. </para>
<para><function>hastodo(TQString taskname)</function> è una chiamata &DCOP; che cerca un'attività con il nome dato. Se la trova restituisce l'UID iCalendar che identifica quell'attività. Se non lo trova, restituisce una stringa vuota. </para>
<para>Il file iCalendar che &karm; apre è il file che si è cercato. La funzione cerca in tutte le gerarchie delle attività, non solo nelle attività principali. Se più di una attività corrisponde alla ricerca solo la prima viene riportata.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Generato il: 2004-07-13 18:10
<refpurpose>Una nuova attività.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString todoname)
<synopsis>TQString addtodo(TQString todoname)
</synopsis>
<refsect2>
<title>parametri</title>
@ -817,7 +817,7 @@ Generato il: 2004-07-13 18:10
<refsect1>
<title>Descrizione</title>
<para><function>addtodo(QString todoname)</function> è una chiamata &DCOP; che aggiunge una nuova attività principale alle altre già presenti. Viene restituito l'UID della nuova attività. </para>
<para><function>addtodo(TQString todoname)</function> è una chiamata &DCOP; che aggiunge una nuova attività principale alle altre già presenti. Viene restituito l'UID della nuova attività. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Esempi</title>
<para>Per mostrare aiuto sulla classe <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Per mostrare aiuto sulla classe <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>Il secondo oggetto del nostro programma è il pulsante, una istanza della classe <classname>QPushButton</classname>. Tra i due costruttori che creano una istanza del pulsante verrà usato il secondo: esso accetta un testo, che è l'etichetta del pulsante; in questo caso è la stringa "Hello World!". Dopo si chiama il metodo <methodname>resize()</methodname> per modificare la dimensione del pulsante - il pulsante deve essere più largo per rendere la stringa completamente visibile. </para>
<para>Qual è lo scopo del metodo <methodname>show()</methodname>? Come la maggior parte dei widget, la classe <classname>QPushButton</classname> ha una singola ereditarietà e la sua classe base è <classname>QButton</classname>. Seguire il collegamento relativo alla classe <classname>QButton</classname>; verranno visualizzati molti altri widget che ereditano da <classname>QPushButton</classname>, che saranno illustrati in seguito per spiegare il meccanismo segnale/slot. Siccome il metodo <methodname>show()</methodname> non è elencato deve essere un metodo ereditato. La classe <classname>QButton</classname> eredita da <classname>QWidget</classname>. Seguendo nuovamente il collegamento saranno mostrati un gruppo di metodi forniti da quest'ultima classe, tra cui il metodo <methodname>show()</methodname>. Ora si può capire cosa accade nell'esempio: <orderedlist>
<para>Qual è lo scopo del metodo <methodname>show()</methodname>? Come la maggior parte dei widget, la classe <classname>QPushButton</classname> ha una singola ereditarietà e la sua classe base è <classname>QButton</classname>. Seguire il collegamento relativo alla classe <classname>QButton</classname>; verranno visualizzati molti altri widget che ereditano da <classname>QPushButton</classname>, che saranno illustrati in seguito per spiegare il meccanismo segnale/slot. Siccome il metodo <methodname>show()</methodname> non è elencato deve essere un metodo ereditato. La classe <classname>QButton</classname> eredita da <classname>TQWidget</classname>. Seguendo nuovamente il collegamento saranno mostrati un gruppo di metodi forniti da quest'ultima classe, tra cui il metodo <methodname>show()</methodname>. Ora si può capire cosa accade nell'esempio: <orderedlist>
<listitem><para>Si crea una istanza di <classname>QPushButton</classname> usando il secondo costruttore in modo da impostare il testo del pulsante</para></listitem>
<listitem><para>Si ridimensiona il widget in base al suo contenuto</para></listitem>
<listitem><para>Si imposta il widget come quello principale dell'istanza a della classe <classname>QApplication </classname></para></listitem>
<listitem><para>Si indica al widget di mostrarsi sul video chiamando <methodname>show()</methodname>, un metodo derivato dalla classe <classname>QWidget</classname></para></listitem>
<listitem><para>Si indica al widget di mostrarsi sul video chiamando <methodname>show()</methodname>, un metodo derivato dalla classe <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>Dopo aver chiamato il metodo <methodname>exec()</methodname> l'applicazione è visibile all'utente e mostra una finestra con il pulsante contente "Hello World!". Nota: I programmi GUI hanno un comportamento piuttosto diverso dalle applicazioni procedurali: l'applicazione entra nel cosiddetto "ciclo principale degli eventi" ("main event loop"), dove attende le azioni dell'utente e reagisce ad esse. Anche nelle applicazioni Qt il programma deve essere in questo ciclo per poter gestire gli eventi. La prossima sezione spiega brevemente cosa offrono le librerie Qt per la gestione degli eventi generati dell'utente. </para>
<note><para>Per gli utenti più esperti: il pulsante non ha la dichiarazione del genitore nel costruttore, quindi è un widget top-level e viene eseguito in un ciclo di eventi locale che non ha bisogno di attendere il ciclo principale degli eventi. Vedere la documentazione della classe QWidget e la guida di riferimento della libreria KDE</para>
<note><para>Per gli utenti più esperti: il pulsante non ha la dichiarazione del genitore nel costruttore, quindi è un widget top-level e viene eseguito in un ciclo di eventi locale che non ha bisogno di attendere il ciclo principale degli eventi. Vedere la documentazione della classe TQWidget e la guida di riferimento della libreria KDE</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Ora passiamo a dare "vita" all'applicazione elaborando gli eventi dell'utente. Generalmente l'utente ha due modi per interagire con un programma: il mouse e la tastiera. Per entrambi l'interfaccia grafica utente deve fornire metodi per intercettare le azioni e metodi che eseguono qualcosa in risposta a queste azioni. </para>
<para>Il sistema grafico invia tutti gli eventi di interazione all'applicazione corrispondente. La classe <classname>QApplication</classname> li invia alla finestra attiva come oggetti <classname>QEvent</classname> e i widget dovranno decidere cosa farne. Un widget riceve l'evento ed elabora <methodname>QWidget::event(QEvent*)</methodname>, il quale decide quale evento è stato eseguito e come reagire; <methodname>event()</methodname> è il gestore principale degli eventi. In seguito il metodo <methodname>event()</methodname> passa l'evento ai cosiddetti filtri di evento che determinano cosa è successo e cosa fare con l'evento. Se non esiste un filtro assegnato come responsabile per l'evento, saranno chiamati i gestori specializzati per quell'evento. Quindi possiamo decidere tra: <itemizedlist>
<para>Il sistema grafico invia tutti gli eventi di interazione all'applicazione corrispondente. La classe <classname>QApplication</classname> li invia alla finestra attiva come oggetti <classname>QEvent</classname> e i widget dovranno decidere cosa farne. Un widget riceve l'evento ed elabora <methodname>TQWidget::event(QEvent*)</methodname>, il quale decide quale evento è stato eseguito e come reagire; <methodname>event()</methodname> è il gestore principale degli eventi. In seguito il metodo <methodname>event()</methodname> passa l'evento ai cosiddetti filtri di evento che determinano cosa è successo e cosa fare con l'evento. Se non esiste un filtro assegnato come responsabile per l'evento, saranno chiamati i gestori specializzati per quell'evento. Quindi possiamo decidere tra: <itemizedlist>
<listitem><para>Eventi di tastiera -- tasti Tab e Shift-Tab:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Notare che tutte le funzioni degli eventi sono virtuali e protette; quindi si possono reimplementare gli eventi per i propri widget e specificare come essi debbano rispondere. <classname>QWidget</classname> contiene inoltre qualche altro metodo virtuale che può essere utile nei programmi. </para>
<para>Notare che tutte le funzioni degli eventi sono virtuali e protette; quindi si possono reimplementare gli eventi per i propri widget e specificare come essi debbano rispondere. <classname>TQWidget</classname> contiene inoltre qualche altro metodo virtuale che può essere utile nei programmi. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Interazione degli oggetti attraverso segnali e slot</title>
<para>Si è giunti al più ovvio vantaggio degli strumenti Qt: il meccanismo dei segnali e degli slot. Questi offrono una comoda soluzione all'interazione tra oggetti, che in X-Window viene normalmente risolta con funzioni di callback. Siccome questa comunicazione richiede una programmazione rigorosa e a volte rende la creazione di interfacce grafiche molto difficile (come riportato della documentazione Qt e dimostrato in Programming with Qt di K.Dalheimer), Troll Tech ha inventato un nuovo sistema, dove gli oggetti emettono segnali che possono essere connessi ai metodi dichiarati come slot. Il programmatore C++ deve solamente conoscere alcune cose riguardo questo meccanismo: <itemizedlist>
<listitem><para>la dichiarazione di una classe che usa i segnali e gli slot deve contenere la macro TQ_OBJECT all'inizio (senza il punto e virgola) e deve ereditare dalla classe <classname>QObject</classname> </para></listitem>
<listitem><para>la dichiarazione di una classe che usa i segnali e gli slot deve contenere la macro TQ_OBJECT all'inizio (senza il punto e virgola) e deve ereditare dalla classe <classname>TQObject</classname> </para></listitem>
<listitem><para>un segnale può essere emesso tramite la parola chiave emit, es: emit signal(parametri); dall'interno di qualunque membro di una classe che permette l'uso di segnali e slot </para></listitem>
<listitem><para>tutti i segnali utilizzati dalle classi che non sono ereditati devono essere aggiunti alla dichiarazione di classe in una sezione dedicata ai segnali </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>il compilatore per i meta-oggetti moc deve essere eseguito sul file di intestazione per espandere le macro e produrre l'implementazione (che non è necessario conoscere). I file di output dal moc saranno successivamente compilati anche dal compilatore C++. </para></listitem>
</itemizedlist>
</para>
<para>Un'altra strada per utilizzare i segnali senza derivare da <classname>QObject</classname> è utilizzare la classe <classname>QSignal</classname> - vedere la documentazione di riferimento per ulteriori informazioni ed esempi di utilizzo. Nel seguito si presuppone che si stia derivando dalla classe <classname>QObject</classname>. </para>
<para>Un'altra strada per utilizzare i segnali senza derivare da <classname>TQObject</classname> è utilizzare la classe <classname>QSignal</classname> - vedere la documentazione di riferimento per ulteriori informazioni ed esempi di utilizzo. Nel seguito si presuppone che si stia derivando dalla classe <classname>TQObject</classname>. </para>
<para>In questo modo la classe può inviare ovunque segnali ed avere degli slot a cui collegare tali segnali. Utilizzando i segnali non ci si deve preoccupare di chi li riceverà - si deve solo emettere il segnale e connettere un qualunque slot che risponderà all'evento. Inoltre gli slot possono essere utilizzati come normali metodi durante l'implementazione. </para>
<para>Per connettere un segnale ad uno slot si devono utilizzare i metodi <methodname>connect()</methodname> messi a disposizione dalla classe <classname>QObject</classname> o, quando disponibile, metodi speciali forniti dagli oggetti per impostare la connessione ad un determinato segnale. </para>
<para>Per connettere un segnale ad uno slot si devono utilizzare i metodi <methodname>connect()</methodname> messi a disposizione dalla classe <classname>TQObject</classname> o, quando disponibile, metodi speciali forniti dagli oggetti per impostare la connessione ad un determinato segnale. </para>
<sect3 id="c1s2s4s1">
<title>Semplice utilizzo</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Come si può vedere, l'unica modifica richiesta per dare maggiore interazione al pulsante consiste nell'utilizzare il metodo <methodname>connect()</methodname>: tutto quello che si deve aggiungere è <methodname>connect(&amp;hello,SIGNAL( clicked() ), &amp;a,SLOT( quit() ))</methodname>. Cosa significa? La dichiarazione del metodo <methodname>connect()</methodname> nella classe QObject è: </para>
<para><methodname>bool connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * member ) </methodname></para>
<para>Si deve specificare come primo parametro un puntatore ad una istanza di <classname>QObject</classname> che trasmette il segnale, ovvero che può emettere questo segnale; poi si specifica il segnale che si vuole connettere. Gli ultimi due parametri sono l'oggetto ricevitore che fornisce uno slot, seguito dalla funzione membro che in effetti è lo slot che sarà eseguito dopo l'emissione del segnale. </para>
<para>Come si può vedere, l'unica modifica richiesta per dare maggiore interazione al pulsante consiste nell'utilizzare il metodo <methodname>connect()</methodname>: tutto quello che si deve aggiungere è <methodname>connect(&amp;hello,SIGNAL( clicked() ), &amp;a,SLOT( quit() ))</methodname>. Cosa significa? La dichiarazione del metodo <methodname>connect()</methodname> nella classe TQObject è: </para>
<para><methodname>bool connect ( const TQObject * sender, const char * signal, const TQObject * receiver, const char * member ) </methodname></para>
<para>Si deve specificare come primo parametro un puntatore ad una istanza di <classname>TQObject</classname> che trasmette il segnale, ovvero che può emettere questo segnale; poi si specifica il segnale che si vuole connettere. Gli ultimi due parametri sono l'oggetto ricevitore che fornisce uno slot, seguito dalla funzione membro che in effetti è lo slot che sarà eseguito dopo l'emissione del segnale. </para>
<para>Utilizzando i segnali e gli slot gli oggetti dei proprio programma potranno interagire tra loro facilmente senza dipendere esplicitamente dal tipo dell'oggetto ricevente. Nei capitoli seguenti verrà spiegato come utilizzare in maniera produttiva questo meccanismo. Ulteriori informazioni sui segnali e gli slot possono essere trovati nella <ulink url="developer kde.org/documentation/library/libraryref.html">Guida di riferimento della libreria KDE</ulink> e nella <ulink url="doc.trolltech.com">documentazione Qt di riferimento</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Per prima cosa è stata cambiata la classe <classname>QApplication</classname> con la classe <classname>TDEApplication</classname>. Inoltre è stato cambiato il metodo <methodname>setMainWidget()</methodname> usato precedentemente con il metodo <methodname>setTopWidget</methodname>, che viene usato da <classname>TDEApplication</classname> per impostare il widget principale. Ecco qua! La prima applicazione KDE è pronta - ora si deve solo indicare al compilatore il percorso di inclusione di KDE e al linker di collegare la libreria kdecode con l'opzione -ltdecore. </para>
<para>Ora che si conosce cosa fornisce la funzione <function>main()</function>, come rendere visibile l'applicazione e come gli oggetti interagiscono con l'utente, nel prossimo capitolo verrà creata una applicazione con &tdevelop;. Potremo quindi applicare e verificare quanto detto precedentemente. </para>
<para>Prima di proseguire si dovrebbe consultare la documentazione di riferimento di Qt, in particolare le classi <classname> QApplication</classname>, <classname>QWidget</classname> e <classname>QObject</classname>, e la documentazione della libreria tdecore per la classe <classname>TDEApplication </classname>. Il <ulink url="developer.kde.org/documentation/library/libraryref.html">manuale di riferimento delle librerie KDE</ulink> include una descrizione completa sulle chiamate ai costruttori delle classi <classname>QApplication</classname> e <classname> TDEApplication</classname> e l'elaborazione degli argomenti a linea di comando. </para>
<para>Prima di proseguire si dovrebbe consultare la documentazione di riferimento di Qt, in particolare le classi <classname> QApplication</classname>, <classname>TQWidget</classname> e <classname>TQObject</classname>, e la documentazione della libreria tdecore per la classe <classname>TDEApplication </classname>. Il <ulink url="developer.kde.org/documentation/library/libraryref.html">manuale di riferimento delle librerie KDE</ulink> include una descrizione completa sulle chiamate ai costruttori delle classi <classname>QApplication</classname> e <classname> TDEApplication</classname> e l'elaborazione degli argomenti a linea di comando. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // allow the view to change the statusbar and caption
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Non c'è bisogno di dire che la stabilità è l'obiettivo principale della progettazione. Nessuno può evitare gli errori, ma si può almeno effettuare una progettazione saggia e orientata agli oggetti. Il linguaggio C++ rende la programmazione un piacere se si sfruttano le sue capacità come ereditarietà, incapsulamento e riuso del codice già esistente. </para>
<para>Quando si crea un progetto KDE o Qt, si dovrà avere sempre una vista che deriva da QWidget per ereditarietà diretta o perché il widget di libreria che si vuole usare deriva da QWidget. Quindi la procedura guidata per l'applicazioni crea una vista che è istanza di una classe di nome NomeApplicazioneView che deriva da QWidget. </para>
<para>Quando si crea un progetto KDE o Qt, si dovrà avere sempre una vista che deriva da TQWidget per ereditarietà diretta o perché il widget di libreria che si vuole usare deriva da TQWidget. Quindi la procedura guidata per l'applicazioni crea una vista che è istanza di una classe di nome NomeApplicazioneView che deriva da TQWidget. </para>
<para>Questo capitolo descrive come usare i widget delle librerie per creare viste di applicazioni KDE o Qt che sono generate con &tdevelop;, in seguito si esamineranno le librerie e i tipi di viste disponibili. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>Nella prima pagina della documentazione Qt in linea è presente un collegamento alle "schermate dei widget" dove si può osservare l'aspetto dei widget. Questi widget sono pronti per essere utilizzati direttamente o combinati assieme formando widget più complessi per creare viste di applicazioni o finestre di dialogo. In seguito saranno discussi alcuni di essi che sono utilizzabili per creare viste di applicazioni, ma ricordarsi che le librerie KDE contengono widget alternativi che servono agli stessi scopi; questi verranno esaminati nella prossima sezione. </para>
<para>Ecco una serie di suggerimenti per scegliere il componente Qt da usare per un particolare scopo <orderedlist>
<listitem><para>Se l'area di vista non è abbastanza grande per visualizzare tutti i dati, l'utente deve poter scorrere il documento con le barre poste a lato e in basso. Qt fornisce la classe <classname>QScrollView</classname> che offre un'area figlio scorrevole. Si può derivare il proprio widget da questa classe o utilizzare una sua istanza. </para></listitem>
<listitem><para>per creare uno ScrollView, derivare il widget per la vista da <classname>QWidget</classname> e aggiungere una barra di scorrimento orizzontale ed una verticale <classname>QScrollBars</classname>. (Questo viene fatto dal widget TDEHTMLViews di KDE.) </para></listitem>
<listitem><para>per creare uno ScrollView, derivare il widget per la vista da <classname>TQWidget</classname> e aggiungere una barra di scorrimento orizzontale ed una verticale <classname>QScrollBars</classname>. (Questo viene fatto dal widget TDEHTMLViews di KDE.) </para></listitem>
<listitem><para>Per l'elaborazione del testo, usare <classname>QTextEdit</classname>. Questa classe include un widget per il testo completo che dispone delle funzionalità per tagliare, copiare e incollare testo ed è gestito da barre di scorrimento. </para></listitem>
<listitem><para>Usare la classe <classname>QTable</classname> per visualizzare i dati organizzati in una tabella. Siccome questa classe è gestita da barre di scorrimento, costituisce una buona soluzione per le applicazioni di calcolo con tabelle. </para></listitem>
<listitem><para>Per visualizzare due widget diversi o due istanze contemporaneamente,utilizzare la classe <classname>QSplitter</classname>. Questa permette di affiancare le viste verticalmente o orizzontalmente. Per osservare questo elemento grafico si può prendere come esempio KMail: la vista principale è separata da un divisore verticale, e la finestra a destra è a sua volta separata orizzontalmente. </para></listitem>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>Il pulsante <guibutton>Che cos'è?</guibutton></title>
<para>Il pulsante <guibutton>Che cos'è?</guibutton> visualizza una finestra quando l'utente vuole ricevere aiuto su un particolare widget o un elemento della barra degli strumenti. Esso è posizionato nella barra degli strumenti e viene attivato quando viene premuto. Il cursore del mouse diventa una freccia con un punto interrogativo, e quando viene fatto clic su un widget appare una finestra di aiuto. Come esercizio, si può provare usando il pulsante <guibutton>Che cos'è?</guibutton> in &tdevelop;. </para>
<para>Per aggiungere l'aiuto Che cos'è? su un widget, usare il metodo statico <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;test)</methodname> </para>
<para>Per aggiungere l'aiuto Che cos'è? su un widget, usare il metodo statico <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;test)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Conversione veloce da <classname>QImage</classname> a <classname>QPixmap</classname>. </para>
<para>Conversione veloce da <classname>TQImage</classname> a <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Il modello a basso livello di Qt per le immagini è basato sulle funzioni fornite da X11 e da altri sistemi grafici per i quali esiste il port di Qt. Tuttavia esso estende queste funzioni implementando funzionalità aggiuntive come le trasformazioni geometriche arbitrarie del testo e delle pixmap. </para>
<para>La classe grafica principale per il disegno 2D è <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Essa può disegnare su un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Sono stati implementati tre tipi di QPaintDevice: il primo è <ulink url="kdeapi:qt/QWidget">QWidget</ulink> che rappresenta un widget sullo schermo. Il secondo è <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> che rappresenta una stampante e produce un output PostScript. Il terzo è la classe <ulink url="kdeapi:qt/QPicture">QPicture</ulink> che registra i comandi di disegno e può salvarli sul disco per poterli riprodurre in seguito. Un possibile formato di memorizzazione per questi comandi di disegno è lo standard SVG del W3C. </para>
<para>La classe grafica principale per il disegno 2D è <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Essa può disegnare su un <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Sono stati implementati tre tipi di QPaintDevice: il primo è <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink> che rappresenta un widget sullo schermo. Il secondo è <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> che rappresenta una stampante e produce un output PostScript. Il terzo è la classe <ulink url="kdeapi:qt/QPicture">QPicture</ulink> che registra i comandi di disegno e può salvarli sul disco per poterli riprodurre in seguito. Un possibile formato di memorizzazione per questi comandi di disegno è lo standard SVG del W3C. </para>
<para>In questo modo è possibile stampare riutilizzando il codice di disegno usato per visualizzare un widget. Naturalmente il codice viene usato in un contesto leggermente diverso: il disegno di un widget viene fatto quasi esclusivamente nel metodo paintEvent() di una classe widget. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle) - Crea un pennello nero con uno dei motivi predefiniti mostrati sotto.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle) - Crea un pennello colorato con uno dei motivi di default mostrati sotto.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle) - Crea un pennello colorato con uno dei motivi di default mostrati sotto.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) - Crea un pennello colorato con un motivo personalizzato fornito come secondo parametro.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) - Crea un pennello colorato con un motivo personalizzato fornito come secondo parametro.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Colore</title>
<para>I colori vengono usati quando si disegnano curve e quando si riempiono forme. In Qt i colori sono rappresentati dalla classe <ulink url="kdeapi:qt/QColor">QColor</ulink>. Qt non supporta funzioni grafiche avanzate come i profili di colore ICC e la correzione del colore. I colori sono normalmente costruiti specificando i componenti rosso, verde e blu, come il modello RGB usato per i pixel di un monitor. </para>
<para>I colori vengono usati quando si disegnano curve e quando si riempiono forme. In Qt i colori sono rappresentati dalla classe <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. Qt non supporta funzioni grafiche avanzate come i profili di colore ICC e la correzione del colore. I colori sono normalmente costruiti specificando i componenti rosso, verde e blu, come il modello RGB usato per i pixel di un monitor. </para>
<para>È possibile anche usare la tonalità, la saturazione e la luminosità. Questa rappresentazione HSV è quella usata nella finestra di dialogo Gtk per il colore, per es. in GIMP. Qui, la tonalità corrisponde ad un angolo sulla ruota del colore, mentre la saturazione corrisponde alla distanza dal centro del cerchio. La luminosità può essere scelta su un'indicatore separato. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> corrisponde direttamente alle pixmap di X11. Le pixmap sono oggetti server-side e possono - su schede grafiche recenti - anche essere memorizzate direttamente nella memoria della scheda. Questo rende <emphasis>molto</emphasis> efficiente trasferire pixmap sullo schermo. Queste fungono anche come un'equivalente dei widget - la classe QPixmap è una sottoclasse di QPaintDevice, quindi la si può disegnare con un QPainter. Le operazioni di disegno elementari sono normalmente accelerate dalle schede grafiche moderne, quindi è un'abitudine comune usare le pixmap per il double buffering. In questo modo, invece di disegnare direttamente su un widget, si disegna su un oggetto pixmap temporaneo e si usa la funzione <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> per trasferire la pixmap nel widget. Nelle operazioni di ridisegno più complesse questo può aiutare per evitare gli sfarfalii. </para>
<para>Al contrario, gli oggetti <ulink url="kdeapi:qt/QImage">QImage</ulink> sono client-side. La loro caratteristica consiste nel fornire un accesso diretto ai pixel, che li rende utili per la manipolazione delle immagini e per altre cose come il caricamento e il salvataggio sul disco (il metodo load() di QPixmap riceve un oggetto QImage come fase intermedia). D'altra parte, dipingere un'immagine su un widget è un'operazione costosa, poiché implica un trasferimento nel server X, che richiede parecchio tempo specialmente con immagini grandi e su server remoti. La conversione da QImage a QPixmap può richiedere anche la retinatura, a seconda della profondità del colore. </para>
<para>Al contrario, gli oggetti <ulink url="kdeapi:qt/TQImage">TQImage</ulink> sono client-side. La loro caratteristica consiste nel fornire un accesso diretto ai pixel, che li rende utili per la manipolazione delle immagini e per altre cose come il caricamento e il salvataggio sul disco (il metodo load() di QPixmap riceve un oggetto TQImage come fase intermedia). D'altra parte, dipingere un'immagine su un widget è un'operazione costosa, poiché implica un trasferimento nel server X, che richiede parecchio tempo specialmente con immagini grandi e su server remoti. La conversione da TQImage a QPixmap può richiedere anche la retinatura, a seconda della profondità del colore. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Disegnare testo</title>
<para>Il testo può essere disegnato con una delle versioni sovraccaricate del metodo QPainter::drawText(). Queste disegnano una QString in un certo punto o in un certo rettangolo, usando il font impostato con il metodo QPainter::setFont(). C'è anche un parametro che riceve una combinazione ORed di alcuni flag dell'enumerazione <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> e <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>Il testo può essere disegnato con una delle versioni sovraccaricate del metodo QPainter::drawText(). Queste disegnano una TQString in un certo punto o in un certo rettangolo, usando il font impostato con il metodo QPainter::setFont(). C'è anche un parametro che riceve una combinazione ORed di alcuni flag dell'enumerazione <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> e <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>Dalla versione 3.0, Qt si occupa della disposizione del testo anche per i linguaggi scritti da destra verso sinistra. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>In aggiunta alle voci normali, questo esempio mostra come dichiarare un servizio che ha alcune proprietà. Ogni definizione di proprietà corrisponde al gruppo <literal>[PropertyDef::name]</literal> nel file di configurazione. La voce <literal>Type</literal> di questo gruppo dichiara il tipo della proprietà. I tipi possibili sono tutti quelli che possono essere memorizzati in un <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Con un oggetto <classname>KService</classname> si può semplicemente caricare la libreria e ottenere un puntatore al suo oggetto factory: </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Starting kioserver failed with message " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>In questo esempio il servizio è stato avviato "con il nome", cioè il primo argomento della funzione <function>TDEApplication::startServiceByName()</function> è il nome che appare nella linea <literal>Name</literal> del file desktop. In alternativa si può usare la funzione <function>TDEApplication::startServiceByDesktopName()</function>, che accetta come argomento il nome del suo file desktop, in questo caso <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Tutte queste chiamate ricevono come secondo argomento una lista di URL, che viene passata al servizio a linea di comando. Il terzo argomento è un puntatore ad una <classname>QString</classname>. Se l'avvio del servizio non riesce questo argomento punta ad un messaggio di errore. </para>
<para>Tutte queste chiamate ricevono come secondo argomento una lista di URL, che viene passata al servizio a linea di comando. Il terzo argomento è un puntatore ad una <classname>TQString</classname>. Se l'avvio del servizio non riesce questo argomento punta ad un messaggio di errore. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Ovviamente anche KMimeMagic è in grado di determinare solo il tipo del file dai contenuti di un file locale. Per i file remoti esiste un'ulteriore possibilità: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Could not find out type" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Ottenere un'icona da un URL. Viene cercato il tipo dell'URL e viene restituita l'icona associata. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Avviare un URL. Viene cercato il tipo dell'URL e viene avviato il programma preferito dall'utente associato a questo tipo. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Rinomina un file. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Crea un collegamento simbolico. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// load the file with the name tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Last modified: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Crea un collegamento simbolico.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText myWidget <quote>new text</quote> </para>
<para>Si presume che tu ti trovi in un file &kommander; ed hai accesso al comando speciale @pid che contiene l'ID del processo. Nella pratica è più semplice sostituire <quote>kmdr-executor-@pid</quote> con @dcopid. Per modificare la finestra di &kommander;, puoi, comunque, utilizzare questa sintassi (ovviamente senza i comandi speciali) dalla linea di comando o da qualsiasi altro script esterno. </para>
<para>Dato che &kommander; non possiede un analizzatore completo nel sua fase Alpha, usare il comando &DCOP; interno, molto più rapido, dalla finestra di un'altra applicazione (la console &DCOP; è molto lenta) è più complicato perché devi fornire molte informazioni, incluso un prototipo della chiamata. La chiamata di prima diventerebbe: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>Al momento in cui questo manuale è stato scritto dovresti sapere che annidare chiamate &DCOP; all'interno di strutture di linguaggi di script (come <application>bash</application>) impone l'utilizzo dei metodi di chiamata da console. <emphasis>Se utilizzi il &DCOP; interno tutti i comandi speciali di &kommander; saranno eseguiti prima dello script.</emphasis> </para>
<para>Esiste una nuova modalità semplificata di utilizzare &DCOP; all'interno di &kommander; utilizzando una sintassi ad oggetti. Supponiamo che tu voglia cambiare il testo in un widget chiamato @LineEdit1. Si scriverebbe così. </para>
<para>@LineEdit1.changeWidgetText(New text) </para>
@ -29,15 +29,15 @@
<title>&DCOP; per Variabili Globali</title>
<variablelist>
<varlistentry>
<term>global(QString nomeVariabile)</term>
<term>global(TQString nomeVariabile)</term>
<listitem>
<para>Restituisce il valore della variabile globale specificata. Quando uno script viene lanciato all'interno di una finestra di &kommander; qualsiasi variabile (non globale) impostata in quello script cesserà di esistere una volta terminato lo script e perciò non sarà più disponibile ai processi degli altri script o in una nuova istanza del processo chiamante. Nel <quote>contesto</quote> globale la variabile esisterà per ogni processo od ogni finestra fino al momento in cui quella viene chiusa. Puoi modificare queste variabili in ogni momento con una nuova chiamata a <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString nomeVariabile, QString valore)</term>
<term>setGlobal(TQString nomeVariabile, TQString valore)</term>
<listitem>
<para>Crea una variabile che è globale per la finestra del processo e le assegna un valore. Questo valore può essere recuperato con global(QString nomeVariabile) o reimpostato. </para>
<para>Crea una variabile che è globale per la finestra del processo e le assegna un valore. Questo valore può essere recuperato con global(TQString nomeVariabile) o reimpostato. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString testo)</term>
<term>changeWidgetText(TQString testo)</term>
<listitem>
<para>Questo comando dovrebbe venir rinominato in setWidgetText ed il suo nome verrà probabilmente deprecato. Esso rimuove il testo visualizzato nel widget sostituendolo con il testo fornito. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString testo)</term>
<term>setAssociatedText(TQString testo)</term>
<listitem>
<para>Imposta la stringa predefinita di Testo di &kommander;. Questa è tipicamente impostata a <quote>@widgetText</quote> per visualizzare ciò che viene inserito nel widget. È raro che tu ne abbia bisogno, in ogni caso c'è. Viene applicato a tutti i widget che contengono informazioni. </para>
</listitem>
@ -78,7 +78,7 @@
<title>&DCOP; per i Widget ListBox e ComboBox</title>
<variablelist>
<varlistentry>
<term>addListItem(QString elemento, int indice)</term>
<term>addListItem(TQString elemento, int indice)</term>
<listitem>
<para>Aggiunge un elemento ad un widget ListBox all'indice specificato. L'indice della lista comincia da zero. Per aggiungere alla fine della lista utilizzare -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString elemento)</term>
<term>addUniqueItem(TQString elemento)</term>
<listitem>
<para>addUniqueItem aggiungerà un elemento alla fine della lista solo se non è già presente. </para>
</listitem>
@ -126,7 +126,7 @@
<title>&DCOP; per i Widget CheckBox e RadioButton</title>
<variablelist>
<varlistentry>
<term>setChecked(QString nomeWidget, bool attivato)</term>
<term>setChecked(TQString nomeWidget, bool attivato)</term>
<listitem>
<para>Attiva/disattiva i widget CheckBox o RadioButton. </para>
</listitem>
@ -138,7 +138,7 @@
<title>&DCOP; per i Widget TabWidget</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString nomeWidget, int indice)</term>
<term>setCurrentTab(TQString nomeWidget, int indice)</term>
<listitem>
<para>Seleziona la linguetta del TabWidget in base all'indice. L'indice comincia da 0. </para>
</listitem>

@ -4369,5 +4369,5 @@ msgstr ""
#~ msgid "Use diagram colors"
#~ msgstr "Utilizza i colori del diagramma"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29382,19 +29382,19 @@ msgstr "Fiducia certificato SSL"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Errore compilando l'espressione regolare."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Stile Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Stile Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Inserisci la classe base dalla quale la tua nuova classe sarà derivata. "
#~ "Se hai attivato 'genera una classe figlia di QWidget' la nuova classe "
#~ "sarà derivata da QWidget. Se nessuna classe base è nominata, la nuova "
#~ "Se hai attivato 'genera una classe figlia di TQWidget' la nuova classe "
#~ "sarà derivata da TQWidget. Se nessuna classe base è nominata, la nuova "
#~ "classe non avrà una classe genitore. Puoi anche usare classi template qui "
#~ "(come ClasseBase<int, int>)"

@ -3987,5 +3987,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "ズーム:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -6930,8 +6930,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"多重継承は、 TQObject 派生を基底クラスリストの最初でユニークな位置に置くこと"
"必要です。"
"多重継承は、 TQObject 派生を基底クラスリストの最初でユニークな位置に置くこと"
"必要です。"
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -22718,9 +22718,9 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"新規クラスが継承する基本クラスの名前を入力してください。「TQWidget の子クラス"
"を生成」をチェックすると、新規クラスは TQWidget を継承します。基本クラス名を"
"定しなかった場合は、新規クラスは親クラスを持ちません。BaseClass<int, int> "
"ようなテンプレートクラスも使用できます。"
"を生成」をチェックすると、新規クラスは TQWidget を継承します。基本クラス名を"
"定しなかった場合は、新規クラスは親クラスを持ちません。BaseClass<int, int> "
"ようなテンプレートクラスも使用できます。"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -28057,18 +28057,18 @@ msgstr ""
#~ msgid "&Repository History"
#~ msgstr "リポジトリの履歴(&R)"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 スタイル (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 スタイル (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "新規クラスが継承する基本クラスの名前を入力してください。「QWidget の子クラ"
#~ "スを生成」をチェックすると、新規クラスは QWidget を継承します。基本クラス"
#~ "新規クラスが継承する基本クラスの名前を入力してください。「TQWidget の子クラ"
#~ "スを生成」をチェックすると、新規クラスは TQWidget を継承します。基本クラス"
#~ "名を指定しなかった場合は、新規クラスは親クラスを持ちません。"
#~ "BaseClass<int, int> のようなテンプレートクラスも使用できます。"

@ -23270,10 +23270,10 @@ msgid ""
"TQWidget. If no base class is named, the new class will not have a parent "
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"여기서 기술된 새 클래스의 기본 클래스를 삽입하십시오. 만약 'TQWidget 하위 클"
"스 생성'을 체크했다면 QWidget으로부터 새로운 클래스가 전달될 것입니다.만약 "
"름이 있는 기본 클래스가 없다면, 새로운 클래스는 상위 클래스를 갖지 않을것입"
"다. 또한 BaseClass<int, int>와 같은 템플릿 클래스를 사용할 수 있습니다."
"여기서 기술된 새 클래스의 기본 클래스를 삽입하십시오. 만약 'TQWidget 하위 클"
"스 생성'을 체크했다면 QWidget으로부터 새로운 클래스가 전달될 것입니다.만약 "
"름이 있는 기본 클래스가 없다면, 새로운 클래스는 상위 클래스를 갖지 않을것입"
"다. 또한 BaseClass<int, int>와 같은 템플릿 클래스를 사용할 수 있습니다."
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -28599,12 +28599,12 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "여기서 기술된 새 클래스의 기본 클래스를 삽입하십시오. 만약 'QWidget 하위 "
#~ "여기서 기술된 새 클래스의 기본 클래스를 삽입하십시오. 만약 'TQWidget 하위 "
#~ "클래스 생성'을 체크했다면 QWidget으로부터 새로운 클래스가 전달될 것입니다."
#~ "만약 이름이 있는 기본 클래스가 없다면, 새로운 클래스는 상위 클래스를 갖지 "
#~ "않을것입니다. 또한 BaseClass<int, int>와 같은 템플릿 클래스를 사용할 수 있"

@ -30308,7 +30308,7 @@ msgstr ""
#~ msgstr "&Ziņot Kļūdu..."
#, fuzzy
#~ msgid "Generate &QWidget child class"
#~ msgid "Generate &TQWidget child class"
#~ msgstr "Vispārējs"
#, fuzzy

@ -46,8 +46,8 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"Ова е тековната боја претставена во хексадецимални rgb бидејќи може да го "
"користите во HTML или како име на TQColor. Правоаголната позадина ги "
"покажува боите на пикселите во малиот квадрат на крајот на линискиот курсор."
"користите во HTML или како име на TQColor. Правоаголната позадина ги покажува "
"боите на пикселите во малиот квадрат на крајот на линискиот курсор."
#: klineal.cpp:147
msgid "KRuler"

@ -4007,5 +4007,5 @@ msgstr ""
#~ msgid "No Language Selected"
#~ msgstr "Не е избран јазик"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -3944,5 +3944,5 @@ msgstr ""
#~ msgid "No Language Selected"
#~ msgstr "Intet språk valgt"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23100,8 +23100,8 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Oppgi hvilken baseklasse den nye klassen skal arve fra. Hvis du har krysset "
"av 'lag subklasse av TQWidget', så vil den nye klassen arve fra TQWidget. "
"Hvis du ikke oppgir noen baseklasse, vi den nye klassen ikke ha "
"av 'lag subklasse av TQWidget', så vil den nye klassen arve fra TQWidget. Hvis "
"du ikke oppgir noen baseklasse, vi den nye klassen ikke ha "
"noenforeldreklasse. Her kan det også brukes mal-klasser (som Baseklasse<int, "
"int>)"
@ -29450,14 +29450,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Oppgi hvilken baseklasse den nye klassen skal arve fra. Hvis du har "
#~ "krysset av 'lag subklasse av QWidget', så vil den nye klassen arve fra "
#~ "QWidget. Hvis du ikke oppgir noen baseklasse, vi den nye klassen ikke ha "
#~ "krysset av 'lag subklasse av TQWidget', så vil den nye klassen arve fra "
#~ "TQWidget. Hvis du ikke oppgir noen baseklasse, vi den nye klassen ikke ha "
#~ "noenforeldreklasse. Her kan det også brukes mal-klasser (som "
#~ "Baseklasse<int, int>)"

@ -4008,5 +4008,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Maakt den Statusbalken an oder ut"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -30489,19 +30489,19 @@ msgstr "Totroen to SSL-Zertifikaat"
#~ msgstr ""
#~ "Verbetert Oplösen vun Koppdateiornern mit \"ma&ke\" (warrt utprobeert)"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt&4-Stil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt&4-Stil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Giff hier de Basisklass in, vun de Dien niege Klass afleddt warrt. Wenn "
#~ "Du \"QWidget-Ünnerklass opstellen\" utsöcht hest, warrt de niege Klass "
#~ "vun QWidget afleddt. Wenn keen Basisklass angeven is, hett de niege Klass "
#~ "Du \"TQWidget-Ünnerklass opstellen\" utsöcht hest, warrt de niege Klass "
#~ "vun TQWidget afleddt. Wenn keen Basisklass angeven is, hett de niege Klass "
#~ "keen överornt Klass. Du kannst hier ok Vörlaagklassen ingeven (as "
#~ "Basisklass<int, int>)"

@ -634,8 +634,8 @@ acknowledged if the following part of the searched string does match
its <emphasis>PATTERN</emphasis>.</para>
<para>The expression <userinput>const \w+\b(?!\s*&amp;)</userinput>
will match at <quote>const char</quote> in the string <quote>const
char* foo</quote> while it can not match <quote>const QString</quote>
in <quote>const QString&amp; bar</quote> because the
char* foo</quote> while it can not match <quote>const TQString</quote>
in <quote>const TQString&amp; bar</quote> because the
<quote>&amp;</quote> matches the negative lookahead assertion
pattern.</para>
</listitem>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Loading KDE
<para>Voordat uw programma begint met het rekenintensieve werk, of voordat het begint met het laden van plugins, &etc;, roept u &ksplash; als volgt aan:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Telkens als u een bericht, met of zonder pictogram, wilt tonen gebruikt u</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Pluginklassen moeten een <literal>statische</literal> functie met de naam <function>names</function> aanleveren, die een lijst met namen teruggeeft die de plugin kunnen aanroepen.</para></listitem>
<listitem><para>Als de plugin kan worden ingesteld in de configuratiemodule, dan moet het een op <literal>ThemeEngineConfig</literal>-gebaseerde klasse aanleveren voor de configuratie.</para></listitem>
<listitem><para>Pluginklassen moeten tenminste één van de virtuele functies <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> en <function>slotUpdateSteps</function> onderdrukken (<foreignphrase lang="en">override</foreignphrase>) om het bruikbaar te maken.</para></listitem>
<listitem><para>De constructor moet de vorm <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> hebben, zodat het kan worden gebruikt met <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>De constructor moet de vorm <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> hebben, zodat het kan worden gebruikt met <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>De laatste vereiste lijkt moeilijk, maar, zoals we later zullen zien, door één regel tekst toe te voegen aan uw broncoderegels kunt u het meestal negeren.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Laten we de bovenstaande inhoud analyseren. De klasse <classname>Theme2k</classname> voldoet aan de naamconventies en is overgeërfd van <classname>ThemeEngine</classname>. De klasse levert een <methodname>Theme2k::names()</methodname>, en heeft een constructor die de vereiste paramaters pakt: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> en ook een eenvoudige methode <methodname>Theme2k::slotSetText()</methodname>levert. Maak u op dit moment niet druk over de klasse <classname>RotWidget</classname>. Het is een kleine widget die wat eye candy voor de gebruiker aanlevert. Onze plugin is erg eenvoudig en toont geen pictogrammen of voortgangsbalk. Als u pictogrammen wilt gebruiken, onderdruk (<foreignphrase lang="en">override</foreignphrase>) dan de functie <function>slotSetPixmap</function>. Vergelijkbare functies bestaan voor het instellen van de voorgangsbalkbereik (<function>slotUpdateSteps</function> en het ophogen van de huidige stap (<function>slotUpdateProgress</function>). </para>
<para>Laten we de bovenstaande inhoud analyseren. De klasse <classname>Theme2k</classname> voldoet aan de naamconventies en is overgeërfd van <classname>ThemeEngine</classname>. De klasse levert een <methodname>Theme2k::names()</methodname>, en heeft een constructor die de vereiste paramaters pakt: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> en ook een eenvoudige methode <methodname>Theme2k::slotSetText()</methodname>levert. Maak u op dit moment niet druk over de klasse <classname>RotWidget</classname>. Het is een kleine widget die wat eye candy voor de gebruiker aanlevert. Onze plugin is erg eenvoudig en toont geen pictogrammen of voortgangsbalk. Als u pictogrammen wilt gebruiken, onderdruk (<foreignphrase lang="en">override</foreignphrase>) dan de functie <function>slotSetPixmap</function>. Vergelijkbare functies bestaan voor het instellen van de voorgangsbalkbereik (<function>slotUpdateSteps</function> en het ophogen van de huidige stap (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Implementatie van de plugin</title>
@ -686,7 +686,7 @@ private:
<para>De macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> is gedeclareerd in <filename>kgenericfactory.h</filename>. Nu naar de constructor! Omdat het een eenvoudige plugin is, is de constructor vrij rechtlijnig.</para>
<example>
<title>Pluginconstructor</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP-functies</title>
<para>De <abbrev>DCOP</abbrev>-interface van &kstars; heeft de volgende functies: <itemizedlist>
<listitem><para><function> lookTowards( const QString richting )</function>: Richten van de kijkrichting in het schermbeeld in de richting die door het argument "richting" wordt gegeven. Dit kan de naam zijn van een hemelobject, of een van de volgende woorden of afkortingen: zenith (of z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw).
<listitem><para><function> lookTowards( const TQString richting )</function>: Richten van de kijkrichting in het schermbeeld in de richting die door het argument "richting" wordt gegeven. Dit kan de naam zijn van een hemelobject, of een van de volgende woorden of afkortingen: zenith (of z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw).
("zenith"->zenit, "north"->noord, "northeast"->noordoost, "east"->oost, "southeast"->zuidoost, "south"->zuid, "southwest"->zuidwest, "west"->west, "northwest"->noordwest - dit dient alleen als toelichting, het is duidelijk dat van deze waarden alleen de Engelse namen zullen worden begrepen ... ). </para></listitem>
@ -30,15 +30,15 @@
<listitem><para><function> waitFor( double t )</function>: "t" seconden pauzeren, alvorens verder te gaan met de volgende opdrachten van de script. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: De verdere uitvoering van de script stoppen, totdat de opgegeven toets "k" wordt ingedrukt. Momenteel kunt u nog geen gecombineerde toetsaanslagen opgeven (zoals <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); u kunt alleen enkelvoudige toetsaanslagen gebruiken. Om de spatiebalk op te geven typt u <quote>space</quote>.
<listitem><para><function> waitForKey( const TQString k )</function>: De verdere uitvoering van de script stoppen, totdat de opgegeven toets "k" wordt ingedrukt. Momenteel kunt u nog geen gecombineerde toetsaanslagen opgeven (zoals <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); u kunt alleen enkelvoudige toetsaanslagen gebruiken. Om de spatiebalk op te geven typt u <quote>space</quote>.
("space" betekent spatie). </para></listitem>
<listitem><para><function> setTracking( bool volgen )</function>: Volgen aan of uitschakelen. ("volgen" is een booleaanse variabele, wat betekent dat die alleen de standaardwaarden "true" of "false" kan hebben (wel volgen, of niet volgen)). </para></listitem>
<listitem><para><function> changeViewOption( const QString optie, const QString waarde )</function>: Instellen van een weergaveoptie. Er zijn er vele tientallen beschikbaar; in principe kunnen alle opties die in het venster <guilabel>Weergaveopties</guilabel> kunnen worden gewijzigd ook hier worden veranderd. Het eerste argument ("optie") is de naam van de optie, (de namen komen uit het configuratiebestand <filename>kstarsrc</filename>), en het tweede argument ("waarde") is de gewenste waarde. Het argumentleesprogramma is robuust, dus als u per ongeluk verkeerde gegevens invult zullen die op een nette manier worden geweigerd. </para></listitem>
<listitem><para><function> changeViewOption( const TQString optie, const TQString waarde )</function>: Instellen van een weergaveoptie. Er zijn er vele tientallen beschikbaar; in principe kunnen alle opties die in het venster <guilabel>Weergaveopties</guilabel> kunnen worden gewijzigd ook hier worden veranderd. Het eerste argument ("optie") is de naam van de optie, (de namen komen uit het configuratiebestand <filename>kstarsrc</filename>), en het tweede argument ("waarde") is de gewenste waarde. Het argumentleesprogramma is robuust, dus als u per ongeluk verkeerde gegevens invult zullen die op een nette manier worden geweigerd. </para></listitem>
<listitem><para><function> setGeoLocation( const QString stad, const QString provincie, const QString land )</function>: De waarnemingslocatie naar de gewenste stad veranderen. Als er geen stad wordt gevonden die met de opgegeven waarden overeenkomt, gebeurt er niets. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString stad, const TQString provincie, const TQString land )</function>: De waarnemingslocatie naar de gewenste stad veranderen. Als er geen stad wordt gevonden die met de opgegeven waarden overeenkomt, gebeurt er niets. </para></listitem>
<listitem><para><function> stop()</function> [clock]: De simulatieklok stoppen. </para></listitem>

@ -38,31 +38,31 @@
<orderedlist>
<listitem><para>Algemene apparaatfuncties: Functies voor het aanzetten/afsluiten van apparaten etc.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString apparaatNaam, bool gebruikLokaal)</function> : Het aanzetten van een dienst van INDI als lokaal of als server.</para></listitem>
<listitem><para><function>shutdownINDI (QString apparaatNaam)</function> : Afsluiten van de dienst INDI.</para></listitem>
<listitem><para><function>switchINDI(QString apparaatNaam, bool aanzetten)</function> : Aan- of afkoppelen van een INDI-apparaat.</para></listitem>
<listitem><para><function>setINDIPort(QString apparaatNaam, QString poort)</function> : De verbindingspoort van het apparaat instellen.</para></listitem>
<listitem><para><function>setINDIAction(QString apparaatNaam, QString actie)</function> : Een INDI-actie activeren. De actie kan elk <emphasis>element</emphasis> zijn van een <emphasis>schakeleigenschap</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString apparaatNaam, QString actie)</function> : De scriptuitvoering onderbreken totdat een opgegeven actie<emphasis>eigenschap</emphasis> de OK-status retourneert.</para></listitem>
<listitem><para><function>startINDI (TQString apparaatNaam, bool gebruikLokaal)</function> : Het aanzetten van een dienst van INDI als lokaal of als server.</para></listitem>
<listitem><para><function>shutdownINDI (TQString apparaatNaam)</function> : Afsluiten van de dienst INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString apparaatNaam, bool aanzetten)</function> : Aan- of afkoppelen van een INDI-apparaat.</para></listitem>
<listitem><para><function>setINDIPort(TQString apparaatNaam, TQString poort)</function> : De verbindingspoort van het apparaat instellen.</para></listitem>
<listitem><para><function>setINDIAction(TQString apparaatNaam, TQString actie)</function> : Een INDI-actie activeren. De actie kan elk <emphasis>element</emphasis> zijn van een <emphasis>schakeleigenschap</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString apparaatNaam, TQString actie)</function> : De scriptuitvoering onderbreken totdat een opgegeven actie<emphasis>eigenschap</emphasis> de OK-status retourneert.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Telescoopfuncties: Functies voor de besturing van de telescoopbeweging en -status.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString apparaatNaam, QString actie)</function> : Voor het instellen van de telescoopmodus of -actie. Beschikbare opties zijn SLEW, TRACK, SYNC, PARK, and ABORT (verplaatsen, volgen, synchroniseren, parkeren en afbreken).</para></listitem>
<listitem><para><function>setINDITargetCoord(QString apparaatNaam, double RK, double DEC)</function> : Voor het instellen van de "JNow"-doelcoördinaten van de telescoop: <emphasis>RK</emphasis> en <emphasis>DEC</emphasis>.
<listitem><para><function>setINDIScopeAction(TQString apparaatNaam, TQString actie)</function> : Voor het instellen van de telescoopmodus of -actie. Beschikbare opties zijn SLEW, TRACK, SYNC, PARK, and ABORT (verplaatsen, volgen, synchroniseren, parkeren en afbreken).</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString apparaatNaam, double RK, double DEC)</function> : Voor het instellen van de "JNow"-doelcoördinaten van de telescoop: <emphasis>RK</emphasis> en <emphasis>DEC</emphasis>.
Noot vertaler: "Jnow" betekent: epoche van dit moment. Een telescoop moet noodzakelijkerwijs werken met de coördinaten die voor precessie zijn gecorrigeerd naar die van het moment waarop de telescoop wordt gebruikt.</para></listitem>
<listitem><para><function>setINDITargetName(QString apparaatNaam, QString objectNaam)</function> : Voor het instellen van de "JNow"-doelcoördinaten van de telescoop naar die van <emphasis>objectNaam</emphasis>. KStars zoekt objectNaam op in zijn gegevensbank en als die wordt gevonden worden de RK en Dec daar opgehaald.
<listitem><para><function>setINDITargetName(TQString apparaatNaam, TQString objectNaam)</function> : Voor het instellen van de "JNow"-doelcoördinaten van de telescoop naar die van <emphasis>objectNaam</emphasis>. KStars zoekt objectNaam op in zijn gegevensbank en als die wordt gevonden worden de RK en Dec daar opgehaald.
Noot vertaler: "Jnow" betekent: epoche van dit moment. Een telescoop moet noodzakelijkerwijs werken met de coördinaten die voor precessie zijn gecorrigeerd naar die van het moment waarop de telescoop wordt gebruikt.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString apparaatNaam, double lengte, double breedte)</function> : Het instellen van de geografische locatie van de telescoop volgens de opgegeven coördinaten. De lengte wordt gerekend vanaf de Meridiaan van Greenwich , VK, in oostelijke richting. Maar, hoewel het gewoon is om voor westelijke lengtes negatieve waarden te gebruiken, vereist INDI waarden voor de lengtes tussen 0 en 360 graden. Dus bij een negatieve lengte moet er voor INDI 360 graden worden bijgeteld. De lengte van Calgary, Canada, bijvoorbeeld, is volgens KStars: -114 04 58 (negatief, dus west), en de breedte: 51 02 58. Dus voor INDI moeten wij bij de negatieve lengte 360 graden optellen: -114,083 + 360 = 245,917 graden (-114,083 is de in decimale graden omgezette lengte -114 04 58, waarbij 04 minuten 58 seconden = 4/60 + 58/3600 = 0,082777... graden).</para></listitem>
<listitem><para><function>setINDIUTC(QString apparaatNaam, QString UTCDatumTijd)</function> : Voor het instellen van de UTC-datum en -tijd in ISO 8601 formaat. Dit formaat is YYYY-MM-DDTHH:MM:SS (bijv. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString apparaatNaam, double lengte, double breedte)</function> : Het instellen van de geografische locatie van de telescoop volgens de opgegeven coördinaten. De lengte wordt gerekend vanaf de Meridiaan van Greenwich , VK, in oostelijke richting. Maar, hoewel het gewoon is om voor westelijke lengtes negatieve waarden te gebruiken, vereist INDI waarden voor de lengtes tussen 0 en 360 graden. Dus bij een negatieve lengte moet er voor INDI 360 graden worden bijgeteld. De lengte van Calgary, Canada, bijvoorbeeld, is volgens KStars: -114 04 58 (negatief, dus west), en de breedte: 51 02 58. Dus voor INDI moeten wij bij de negatieve lengte 360 graden optellen: -114,083 + 360 = 245,917 graden (-114,083 is de in decimale graden omgezette lengte -114 04 58, waarbij 04 minuten 58 seconden = 4/60 + 58/3600 = 0,082777... graden).</para></listitem>
<listitem><para><function>setINDIUTC(TQString apparaatNaam, TQString UTCDatumTijd)</function> : Voor het instellen van de UTC-datum en -tijd in ISO 8601 formaat. Dit formaat is YYYY-MM-DDTHH:MM:SS (bijv. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Camera/CCD-Functies voor de besturing van de eigenschappen en status van de camera/CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString apparaatNaam, int temp)</function> : Voor het instellen van de beoogde temperatuur van de CCD-chip in graden Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString apparaatNaam, QString type)</function> : Voor het instellen van het belichtingstype van de CCD. Beschikbare opties zijn FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, and FRAME_FLAT (deze termen niet vertaald, daar de betekenis ervan bekend moet zijn om er zinvol mee te werken)
<listitem><para><function>setINDICCDTemp(TQString apparaatNaam, int temp)</function> : Voor het instellen van de beoogde temperatuur van de CCD-chip in graden Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString apparaatNaam, TQString type)</function> : Voor het instellen van het belichtingstype van de CCD. Beschikbare opties zijn FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, and FRAME_FLAT (deze termen niet vertaald, daar de betekenis ervan bekend moet zijn om er zinvol mee te werken)
Dark frame: Belichting met gesloten sluiter.
Flat frame: Belichting op een egaal verlicht oppervlak.
@ -72,19 +72,19 @@ Light frame: het eigenlijke beeld.
Dark, Flat en Bias frames dienen om het beeld te kunnen verbeteren.
Ik raad aan om met bijvoorbeeld Google informatie hierover te vinden, maar kon zelf nauwelijks Nederlandse pagina's vinden (vert.)</para></listitem>
<listitem><para><function>startINDIExposure(QString apparaatNaam, int tijdsduur)</function> : Voor het instellen van de belichting van de CCD/Camera gedurende een <emphasis>tijdsduur</emphasis> in seconden.</para></listitem>
<listitem><para><function>startINDIExposure(TQString apparaatNaam, int tijdsduur)</function> : Voor het instellen van de belichting van de CCD/Camera gedurende een <emphasis>tijdsduur</emphasis> in seconden.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Focusserfuncties: Functies voor de besturing van de beweging en de status van de focusser (scherpstelinrichting).</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString apparaatNaam, QString actie)</function> : Voor het instellen van de snelheid van de focusser. Beschikbare opties zijn FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, and FOCUS_FAST (focus_halt, _langzaam, _middel en _snel).</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString apparaatNaam, int tijdsduur)</function> : Voor het instellen van de duur in seconden van enige volgende startINDIFocus-bewerking.</para></listitem>
<listitem><para><function>startINDIFocus(QString apparaatNaam, int focusRichting)</function> : Beweegt de focuser of naar binnen (focusRichting = 0) of naar buiten (focusRichting = 1). De snelheid en de tijdsduur van deze bewerking worden ingesteld met de functies <function>setINDIFocusSpeed()</function> en <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString apparaatNaam, TQString actie)</function> : Voor het instellen van de snelheid van de focusser. Beschikbare opties zijn FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, and FOCUS_FAST (focus_halt, _langzaam, _middel en _snel).</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString apparaatNaam, int tijdsduur)</function> : Voor het instellen van de duur in seconden van enige volgende startINDIFocus-bewerking.</para></listitem>
<listitem><para><function>startINDIFocus(TQString apparaatNaam, int focusRichting)</function> : Beweegt de focuser of naar binnen (focusRichting = 0) of naar buiten (focusRichting = 1). De snelheid en de tijdsduur van deze bewerking worden ingesteld met de functies <function>setINDIFocusSpeed()</function> en <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Filterfuncties: Functies voor de besturing van de filterpositie.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString ApparaatNaam, int filter_num)</function> : Verander de filterpositie naar <varname>filter_num</varname>. De gebruiker kan aliassen toekennen aan filternummers in het dialoogvak van <guimenuitem>INDI instellen </guimenuitem> in het menu <guimenu>Apparaten</guimenu> (bijv. Filter 1 = Red (rood), Filter 2 = Green (groen) .. enz.).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString ApparaatNaam, int filter_num)</function> : Verander de filterpositie naar <varname>filter_num</varname>. De gebruiker kan aliassen toekennen aan filternummers in het dialoogvak van <guimenuitem>INDI instellen </guimenuitem> in het menu <guimenu>Apparaten</guimenu> (bijv. Filter 1 = Red (rood), Filter 2 = Green (groen) .. enz.).</para></listitem>
</itemizedlist>
</listitem>

@ -206,16 +206,16 @@
<para>U kunt een lijst van beschikbare &DCOP;-interfaces verkrijgen, gebruik de goede argumenten, zoals in dit voorbeeld getoond: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -734,7 +734,7 @@ Afgedrukt op: 2004-07-13 18:10
<refpurpose>Retourneer de versie van &karm;</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Afgedrukt op: 2004-07-13 18:10
<refpurpose>Retourneer &karm;'s afsluiting.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Afgedrukt op: 2004-07-13 18:10
<refpurpose>Controleer of topniveau-taak bestaat.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString taskname)
<synopsis>TQString hastodo(TQString taskname)
</synopsis>
<refsect2>
<title>Parameters</title>
@ -786,7 +786,7 @@ Afgedrukt op: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Beschrijving</title>
<para><function>hastodo(QString taskname)</function> is een &DCOP;-aanroep die een gegeven naam opzoekt. Als deze gevonden wordt, wordt de bijbehorende iCalendar-UID van de taak geretourneerd. Als deze niet gevonden wordt, wordt een lege tekenreeks geretourneerd. </para>
<para><function>hastodo(TQString taskname)</function> is een &DCOP;-aanroep die een gegeven naam opzoekt. Als deze gevonden wordt, wordt de bijbehorende iCalendar-UID van de taak geretourneerd. Als deze niet gevonden wordt, wordt een lege tekenreeks geretourneerd. </para>
<para>Het iCalendar-bestand dat &karm; momenteel open heeft is het bestand dat doorzocht wordt. Alle taakbomen worden doorzocht, niet alleen topniveau taken. Als meer dan één taak een overeenkomende naam heeft, wordt de eerste geretourneerd.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Afgedrukt op: 2004-07-13 18:10
<refpurpose>Een nieuwe taak toevoegen.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString todoname)
<synopsis>TQString addtodo(TQString todoname)
</synopsis>
<refsect2>
<title>Parameters</title>
@ -817,7 +817,7 @@ Afgedrukt op: 2004-07-13 18:10
<refsect1>
<title>Beschrijving</title>
<para><function>addtodo(QString todoname)</function> is een &DCOP;-aanroep die een nieuwe topniveau-taak aan het huidige bestand toevoegt. De UID van de nieuwe taak wordt geretourneerd. </para>
<para><function>addtodo(TQString todoname)</function> is een &DCOP;-aanroep die een nieuwe topniveau-taak aan het huidige bestand toevoegt. De UID van de nieuwe taak wordt geretourneerd. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Voorbeelden</title>
<para>Om de documentatie te tonen voor de klasse <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Om de documentatie te tonen voor de klasse <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText myWidget <quote>nieuwe tekst</quote> </para>
<para>Dit neemt aan dat u zich in een &kommander;-bestand bevindt en toegang hebt tot de special @pid die het proces-ID bevat. In feite is het eenvoudiger om <quote>kmdr-executor-@pid</quote> door @dcopid te vervangen. Maar u kunt deze syntax (uiteraard zonder de specials) vanaf de opdrachtregel of een willekeurig extern script gebruiken om het &kommander;-venster te wijzigen. </para>
<para>Omdat &kommander; geen volledige parser bevat in de alfa-stage, is het gecompliceerder als u de veel snellere interne &DCOP; wilt gebruiken vanuit een ander toepassingsventer (console-&DCOP; is zeer langzaam) omdat u veel informatie moet meegeven, waaronder een prototype van de aanroep. De bovenstaande aanroep zou worden: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>Op het moment dat dit geschreven wordt, moet u erop letten dat het nesten van &DCOP;-aanroepen binnen scripttalen (zoals <application>bash</application>) betekent dat u de console-aanroepmethode moet gebruiken. <emphasis>Als u interne &DCOP; gebruikt worden eerst alle &kommander;-specials uitgevoerd en daarna wordt het script uitgevoerd.</emphasis> </para>
<para>Er is een nieuwe vereenvoudigde manier om &DCOP; te gebruiken binnen &kommander; door gebruik te maken van een object-syntaxis. Stel dat u de tekst in een widget genaamd @LineEdit1 wilt wijzigen. Dat ziet er als volgt uit: </para>
<para>@LineEdit1.changeWidgetText(New text) </para>
@ -29,15 +29,15 @@
<title>&DCOP; voor globale variabelen</title>
<variablelist>
<varlistentry>
<term>global(QString variableName)</term>
<term>global(TQString variableName)</term>
<listitem>
<para>Retourneert de waarde van de opgegeven globale variabele. Als een script vanuit een &kommander;-venster wordt uitgevoerd, zullen alle (niet-globale) variabelen die in dat script zijn ingesteld, ophouden te bestaan en zullen daarom niet beschikbaar zijn in andere scriptprocessen of in een nieuwe instantie van het aanroepende proces. De globale <quote>scope</quote> (zichtbaarheid) betekent dat de variabele bestaat in elk proces van dat venster totdat het venster gesloten wordt. U kunt deze variabelen op elk moment wijzigen met een nieuwe aanroep naar <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString variableName, QString value)</term>
<term>setGlobal(TQString variableName, TQString value)</term>
<listitem>
<para>Maakt een variabele aan die globaal is voor het vensterproces en wijst de waarde eraan toe. Deze waarde kan worden opgevraagd met global(QString variableName) of opnieuw ingesteld worden. </para>
<para>Maakt een variabele aan die globaal is voor het vensterproces en wijst de waarde eraan toe. Deze waarde kan worden opgevraagd met global(TQString variableName) of opnieuw ingesteld worden. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString text)</term>
<term>changeWidgetText(TQString text)</term>
<listitem>
<para>Dit zou hernoemd moeten worden naar setWidgetText en deze naam zal mogelijk afgeraden worden. Dit verwijdert de tekst die in de widget wordt weergegeven en vervangt deze door de opgegeven tekst. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString text)</term>
<term>setAssociatedText(TQString text)</term>
<listitem>
<para>Dit stelt de standaard tekenreeks voor de &kommander; Text in. Dit is typisch <quote>@widgetText</quote> om weer te geven wat er in het widget is ingevoerd. Het is onwaarschijnlijk dat u dit vaak nodig hebt, maar het is er voor het geval dat u het nodig hebt. Toepasbaar op alle widgets die data kunnen bevatten. </para>
</listitem>
@ -78,7 +78,7 @@
<title>&DCOP; voor ListBox- en ComboBox-widgets</title>
<variablelist>
<varlistentry>
<term>addListItem(QString item, int index)</term>
<term>addListItem(TQString item, int index)</term>
<listitem>
<para>Voegt een item aan een ListBox-widget toe op de opgegeven index. De lijstindex begint op nul. Om aan het einde van de lijst toe te voegen gebruikt u -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString item)</term>
<term>addUniqueItem(TQString item)</term>
<listitem>
<para>addUniqueItem voegt een item aan het einde van de lijst toe alleen als dit nog niet eerder voorkomt. </para>
</listitem>
@ -126,7 +126,7 @@
<title>&DCOP; voor CheckBox- en RadioButton-widgets</title>
<variablelist>
<varlistentry>
<term>setChecked(QString widgetName, bool checked)</term>
<term>setChecked(TQString widgetName, bool checked)</term>
<listitem>
<para>Schakelt CheckBox- of RadioButton-widgets in en uit. </para>
</listitem>
@ -138,7 +138,7 @@
<title>&DCOP; voor TabWidget-widgets</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString widgetName, int index)</term>
<term>setCurrentTab(TQString widgetName, int index)</term>
<listitem>
<para>Stelt het geselecteerde tabblad in voor TabWidgets. De index begint bij 0. </para>
</listitem>

@ -4027,5 +4027,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Zoomen:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23785,9 +23785,9 @@ msgid ""
msgstr ""
"Voeg de basisklasse waar uw nieuwe klasse van afgeleid zal worden in. Als u "
"de optie 'TQWidget-subklasse genereren' hebt geselecteerd zal de nieuwe "
"klasse worden afgeleid van TQWidget. Als er geen basisklasse is opgegeven "
"zal de nieuwe klasse geen superklasse hebben. U kunt hier ook gebruik maken "
"van sjabloonklassen (zoals BaseClass<int, int>)"
"klasse worden afgeleid van TQWidget. Als er geen basisklasse is opgegeven zal "
"de nieuwe klasse geen superklasse hebben. U kunt hier ook gebruik maken van "
"sjabloonklassen (zoals BaseClass<int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -29450,19 +29450,19 @@ msgstr "SSL certificatie vertrouwen"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Fout bij het compileren van de reguliere expressie."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 stijl (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 stijl (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Voeg de basisklasse waar uw nieuwe klasse van afgeleid zal worden in. Als "
#~ "u de optie 'QWidget-subklasse genereren' hebt geselecteerd zal de nieuwe "
#~ "klasse worden afgeleid van QWidget. Als er geen basisklasse is opgegeven "
#~ "u de optie 'TQWidget-subklasse genereren' hebt geselecteerd zal de nieuwe "
#~ "klasse worden afgeleid van TQWidget. Als er geen basisklasse is opgegeven "
#~ "zal de nieuwe klasse geen superklasse hebben. U kunt hier ook gebruik "
#~ "maken van sjabloonklassen (zoals BaseClass<int, int>)"

@ -460,7 +460,7 @@
<term><userinput>(?!PATTERN)</userinput> (Negacja zakotwiczenia w przód)</term>
<listitem><para>Zanegowane zakotwiczenie w przód nie dopuści dopasowania wzorca, jeżeli tekst następujący po nim pasuje do <emphasis>PATTERN</emphasis> (wzorca) zakotwiczenia.</para>
<para>Wyrażenie <userinput>const \w+\b(?!\s*&amp;)</userinput> pasuje do tekstu <quote>const char</quote> w napisie <quote>const char* foo</quote> ale już nie będzie pasować do <quote>const QString</quote> w <quote>const QString&amp; bar</quote> ponieważ znak <quote>&amp;</quote> pasuje do negacji zakotwiczenia w przód.</para>
<para>Wyrażenie <userinput>const \w+\b(?!\s*&amp;)</userinput> pasuje do tekstu <quote>const char</quote> w napisie <quote>const char* foo</quote> ale już nie będzie pasować do <quote>const TQString</quote> w <quote>const TQString&amp; bar</quote> ponieważ znak <quote>&amp;</quote> pasuje do negacji zakotwiczenia w przód.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Uruchamianie KDE
<para>Zanim program użytkownika rozpocznie pracę obciążającą procesor lub przed rozpoczęciem jej ładowania itp. należy wywołać &ksplash; w sposób następujący:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Zawsze gdy należy wyświetlić wiadomość (z ikoną lub bez) należy wywołać funkcję</para>
<programlisting>arg &lt;&lt; QString("iconName") &lt;&lt; QString("programName") &lt;&lt;
QString("Some description");
<programlisting>arg &lt;&lt; TQString("iconName") &lt;&lt; TQString("programName") &lt;&lt;
TQString("Some description");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Some error processing here.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Klasa powinna zawierać definicję statycznej funkcji typu o nazwie <function>names</function> zwracającej listę nazw używanych do uruchamiania wtyczki.</para></listitem>
<listitem><para>Jeżeli wtyczka ma być konfigurowana w module centrum sterowania, to kod programu powinien zawierać zdefiniowaną klasę bazującą na klasie <literal>ThemeEngineConfig</literal> umożliwiającą konfigurację wtyczki.</para></listitem>
<listitem><para>Aby wtyczka mogła funkcjonować, to jej klasa musi zawierać definicję - zastąpienie - co najmniej jednej z następujących funkcji wirtualnych: <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> lub <function>slotUpdateSteps</function>.</para></listitem>
<listitem><para>Konstruktor powinien być następujący <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> tak aby mógł być wykorzystany przez klasę <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Konstruktor powinien być następujący <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> tak aby mógł być wykorzystany przez klasę <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>Ostatnie wymaganie może wydawać się skomplikowane, jednak jak okaże się to poniżej, poprzez dodanie jednego wiersza to kodu programu, można go praktycznie zignorować.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Analizując zawartość powyższego kodu programu zauważyć można następujące elementy. Klasa <classname>Theme2k</classname> została nazwana zgodnie z omawianą wcześniej konwencją nazewniczą, jest potomna względem klasy <classname>ThemeEngine</classname>. Zawiera ona metodę <methodname>Theme2k::names()</methodname> oraz konstruktor obsługujący wymagane parametry wtyczki: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> dodatkowo zdefiniowana została metoda <methodname>Theme2k::slotSetText()</methodname>.Na razie nie należy zwracać uwagi na klasę <classname>RotWidget</classname>, która udostępnia obsługę miłych dla oka elementów interfejsu użytkownika. Omawiana w przykładzie wtyczka jest bardzo prosta, nie wyświetla ona żadnych ikon czy też paska postępu. Jeżeli użytkownik chciałby wyświetlać ikony, to powinien zdefiniować funkcję <function>slotSetPixmap</function>. Istnieją również funkcje określające rozmiar - ilość kroków - paska postępu (<function>slotUpdateSteps</function>) oraz zwiększające pozycję na pasku (<function>slotUpdateProgress</function>) o jeden krok. </para>
<para>Analizując zawartość powyższego kodu programu zauważyć można następujące elementy. Klasa <classname>Theme2k</classname> została nazwana zgodnie z omawianą wcześniej konwencją nazewniczą, jest potomna względem klasy <classname>ThemeEngine</classname>. Zawiera ona metodę <methodname>Theme2k::names()</methodname> oraz konstruktor obsługujący wymagane parametry wtyczki: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> dodatkowo zdefiniowana została metoda <methodname>Theme2k::slotSetText()</methodname>.Na razie nie należy zwracać uwagi na klasę <classname>RotWidget</classname>, która udostępnia obsługę miłych dla oka elementów interfejsu użytkownika. Omawiana w przykładzie wtyczka jest bardzo prosta, nie wyświetla ona żadnych ikon czy też paska postępu. Jeżeli użytkownik chciałby wyświetlać ikony, to powinien zdefiniować funkcję <function>slotSetPixmap</function>. Istnieją również funkcje określające rozmiar - ilość kroków - paska postępu (<function>slotUpdateSteps</function>) oraz zwiększające pozycję na pasku (<function>slotUpdateProgress</function>) o jeden krok. </para>
</sect1>
<sect1 id="Implementation">
<title>Kod implementacji wtyczki</title>
@ -686,7 +686,7 @@ private:
<para>Makro <constant>K_EXPORT_COMPONENT_FACTORY</constant> jest zdefiniowane w pliku <filename>kgenericfactory.h</filename>. Kontynuując, ponieważ jest to bardzo prosta wtyczka, to konstruktor klasy jest bardzo prosty.</para>
<example>
<title>Konstruktor wtyczki</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Funkcje DCOP</title>
<para>Interfejs <abbrev>DCOP</abbrev> &kstars; posiada następujące funkcje: <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function>: Argument wskazuje punkt który będzie przybliżany. Może być to nazwa dowolnego obiektu na niebie, lub jeden z następujących wyrazów lub skrótów kierunków: zenith (lub z, zenit), north (n, północ), northeast (ne, północny wschód), east (e, wschód), southeast (se, południowy wschód), south (s, południe), southwest (sw, południowy zachód), west (w, zachód), northwest (nw, północny zachód). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function>: Argument wskazuje punkt który będzie przybliżany. Może być to nazwa dowolnego obiektu na niebie, lub jeden z następujących wyrazów lub skrótów kierunków: zenith (lub z, zenit), north (n, północ), northeast (ne, północny wschód), east (e, wschód), southeast (se, południowy wschód), south (s, południe), southwest (sw, południowy zachód), west (w, zachód), northwest (nw, północny zachód). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Wskazanie punktu podanego za pomocą współrzędnych równikowych. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Wstrzymanie wykonywania skryptu na t sekund. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Wstrzymanie wykonania skryptu do wciśnięcia przez użytkownika określonego klawisza. Nie można jednak czekać na kombinację klawiszy (takich jak <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); tylko pojedyńcze klawisze. Można wpisać <quote>space</quote>,by czekać na klawisz spacji. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Wstrzymanie wykonania skryptu do wciśnięcia przez użytkownika określonego klawisza. Nie można jednak czekać na kombinację klawiszy (takich jak <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); tylko pojedyńcze klawisze. Można wpisać <quote>space</quote>,by czekać na klawisz spacji. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Włączenie/wyłączenie trybu śledzenia. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Regulacja widoku. Dostępnych jest wiele opcji; wszystkich ustawień można dokonać w oknie <guilabel>Konfiguracja: &kstars;</guilabel>. Pierwszym argumentem jest nazwa opcji (nazwy są wzięte z pliku konfiguracyjnego <filename>kstarsrc</filename>), drugim argumentem jest żądana wartość. Parser argumentu jest dosyć ścisły, zatem wprowadzenie złego argumentu powoduje błąd. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Regulacja widoku. Dostępnych jest wiele opcji; wszystkich ustawień można dokonać w oknie <guilabel>Konfiguracja: &kstars;</guilabel>. Pierwszym argumentem jest nazwa opcji (nazwy są wzięte z pliku konfiguracyjnego <filename>kstarsrc</filename>), drugim argumentem jest żądana wartość. Parser argumentu jest dosyć ścisły, zatem wprowadzenie złego argumentu powoduje błąd. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Zmiana miejsca obserwacji na podaną lokalizację. Jeżeli podane jako argument miasto nie zostanie znalezione, nie zostanie wykonana żadna czynność. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Zmiana miejsca obserwacji na podaną lokalizację. Jeżeli podane jako argument miasto nie zostanie znalezione, nie zostanie wykonana żadna czynność. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Zatrzymanie zegara symulatora. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Ogólne funkcje urządzeń: funkcje do włączania/wyłączania urządzeń itp.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function> : Włącza usługę INDI lokalnie lub na serwerze.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function> : Zamyka usługę INDI.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function> : Podłącza bądź rozłącza urządzenie INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function> : Ustawia port komunikacyjny urządzenia.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function> : Aktywuje akcję INDI. Akcja może być dowolnym <emphasis>elementem</emphasis> z <emphasis>własności przełączania</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function> : Wstrzymuje wykonanie skryptu aż określona <emphasis>własność</emphasis> zwróci status OK.</para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function> : Włącza usługę INDI lokalnie lub na serwerze.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function> : Zamyka usługę INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function> : Podłącza bądź rozłącza urządzenie INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function> : Ustawia port komunikacyjny urządzenia.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function> : Aktywuje akcję INDI. Akcja może być dowolnym <emphasis>elementem</emphasis> z <emphasis>własności przełączania</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function> : Wstrzymuje wykonanie skryptu aż określona <emphasis>własność</emphasis> zwróci status OK.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funkcje teleskopu: Funkcje kontrolujące ruch i stan teleskopu</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function> : Ustawia tryb teleskopu lub działanie. Dostępne opcje to SLEW, TRACK, SYNC, PARK i ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function> : Ustawia cel JNow teleskopu na współrzędne <emphasis>RA</emphasis> i <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function> : Ustawia cel teleskopu JNow na współrzędne wybranego obiektu (<emphasis>objectName</emphasis>. KStars wyszuka nazwę obiektu w bazie danych i pobierze ich RA i Dec.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function> : Ustawia lokalizację teleskopu na określoną długość i szerokość geograficzną. Długość geograficzna jest liczona od Greenwich na wschód. Jednakże mimo tego, że zwykle korzysta się z odwróconych długości geograficznych dla zachodniej półkuli INDI wymaga wartości długości z przedziału od 0 do 360 stopni. Jeżeli więc Twoja długość geograficzna jest ujemna, po prostu dodaj do niej 360 stopni. Na przykład Calgary w Kanadzie ma długość geograficzną: -114 04 58 i szerokość geograficzną: 51 02 58. Tak więc w INDI' te długość geograficzna będzie wynosić 360 - 114.083 = 245.917 stopni.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function> : Ustawia datę i czas UTC teleskopu w formacie ISO 8601. Format ten wygląda następująco: YYYY-MM-DDTHH:MM:SS (np. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function> : Ustawia tryb teleskopu lub działanie. Dostępne opcje to SLEW, TRACK, SYNC, PARK i ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function> : Ustawia cel JNow teleskopu na współrzędne <emphasis>RA</emphasis> i <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString deviceName, TQString objectName)</function> : Ustawia cel teleskopu JNow na współrzędne wybranego obiektu (<emphasis>objectName</emphasis>. KStars wyszuka nazwę obiektu w bazie danych i pobierze ich RA i Dec.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function> : Ustawia lokalizację teleskopu na określoną długość i szerokość geograficzną. Długość geograficzna jest liczona od Greenwich na wschód. Jednakże mimo tego, że zwykle korzysta się z odwróconych długości geograficznych dla zachodniej półkuli INDI wymaga wartości długości z przedziału od 0 do 360 stopni. Jeżeli więc Twoja długość geograficzna jest ujemna, po prostu dodaj do niej 360 stopni. Na przykład Calgary w Kanadzie ma długość geograficzną: -114 04 58 i szerokość geograficzną: 51 02 58. Tak więc w INDI' te długość geograficzna będzie wynosić 360 - 114.083 = 245.917 stopni.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function> : Ustawia datę i czas UTC teleskopu w formacie ISO 8601. Format ten wygląda następująco: YYYY-MM-DDTHH:MM:SS (np. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funkcje kamer/CCD: Funkcje kontrolujące właściwości i stan kamer/CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function> : Ustawia docelową temperaturę barw matrycy CCD w stopniach Celsjusza.</para></listitem>
<listitem><para><function>setINDIFrameType(QString nazwaUrządenia, QString rodzaj)</function> : Ustawia rodzaj ramki CCD. Dostępne opcje to FRAME_LIGHT, FRAME_BIAS, FRAME_DARK i FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function> : Rozpoczyna ekspozycję, na czas określony przez <emphasis>timeout</emphasis>, w sekundach.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function> : Ustawia docelową temperaturę barw matrycy CCD w stopniach Celsjusza.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString nazwaUrządenia, TQString rodzaj)</function> : Ustawia rodzaj ramki CCD. Dostępne opcje to FRAME_LIGHT, FRAME_BIAS, FRAME_DARK i FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function> : Rozpoczyna ekspozycję, na czas określony przez <emphasis>timeout</emphasis>, w sekundach.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funkcje focusera: funkcje do kontroli ruchu i stanu focusera.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function> : Ustawia prędkość focusera. Dostępne opcje to: FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM i FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function> : Ustawia czas trwania składowych operacji startINDIFocus w sekundach.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function> : Przesuwa focuser do wewnątrz (focusDir = 0) albo na zewnątrz (focusDir = 1). Prędkość i czas tej operacji są ustawiane przez funkcje <function>setINDIFocusSpeed()</function>i <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function> : Ustawia prędkość focusera. Dostępne opcje to: FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM i FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function> : Ustawia czas trwania składowych operacji startINDIFocus w sekundach.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function> : Przesuwa focuser do wewnątrz (focusDir = 0) albo na zewnątrz (focusDir = 1). Prędkość i czas tej operacji są ustawiane przez funkcje <function>setINDIFocusSpeed()</function>i <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funkcje filtra: Funkcje kontrolujące pozycję filtra.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function> : Zmiana pozycji filtra na <varname>filter_num</varname>. Użytkownik może przypisać aliasy do numeru filtra w oknie <guimenuitem>Konfiguracja INDI</guimenuitem> z menu <guimenu>Urządzenia</guimenu> (np. Filtr 1 = czerwony, Filtr 2 = zielony itd).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function> : Zmiana pozycji filtra na <varname>filter_num</varname>. Użytkownik może przypisać aliasy do numeru filtra w oknie <guimenuitem>Konfiguracja INDI</guimenuitem> z menu <guimenu>Urządzenia</guimenu> (np. Filtr 1 = czerwony, Filtr 2 = zielony itd).</para></listitem>
</itemizedlist>
</listitem>

@ -3989,5 +3989,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Powiększenie:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29121,19 +29121,19 @@ msgstr "Zaufanie do certyfikatów SSL"
#~ msgid "View"
#~ msgstr "Podglądy"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Styl Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Styl Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Proszę wstawić klasę podstawową, z której nowa klasa będzie dziedziczyć. "
#~ "Jeśli zaznaczono 'Utwórz potomka QWidget', to nowa klasa będzie "
#~ "dziedziczyć po QWidget. Jeśli nie podano klasy podstawowej, to nowa klasa "
#~ "Jeśli zaznaczono 'Utwórz potomka TQWidget', to nowa klasa będzie "
#~ "dziedziczyć po TQWidget. Jeśli nie podano klasy podstawowej, to nowa klasa "
#~ "nie będzie klasą dziedziczącą. Można także użyć tu szablonu klasy (jak "
#~ "KlasaPodstawowa<int,int>)"

@ -464,7 +464,7 @@ compatível com as expressões regulares do Perl, nem com as do
<term><userinput>(?!PADRÃO)</userinput> (Antevisão Negativa)</term>
<listitem><para>A antevisão negativa evita que uma possível correspondência seja extraída, se a parte subsequente ao texto procurado corresponder ao <emphasis>PADRÃO</emphasis>.</para>
<para>A expressão <userinput>const \w+\b(?!\s*&amp;)</userinput> irá corresponder com o <quote>const char</quote> do texto <quote>const char* ola</quote>, embora não corresponderá a <quote>const QString</quote> em <quote>const QString&amp; bar</quote> porque o <quote>&amp;</quote> corresponde ao padrão de verificação antecipada negativa.</para>
<para>A expressão <userinput>const \w+\b(?!\s*&amp;)</userinput> irá corresponder com o <quote>const char</quote> do texto <quote>const char* ola</quote>, embora não corresponderá a <quote>const TQString</quote> em <quote>const TQString&amp; bar</quote> porque o <quote>&amp;</quote> corresponde ao padrão de verificação antecipada negativa.</para>
</listitem>
</varlistentry>

@ -1721,11 +1721,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1742,15 +1742,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = A carregar o KDE
<para>Antes de a sua aplicação iniciar o seu trabalho intensivo, ou antes de começar a carregar os 'plugins', &etc;, invoke o &ksplash; como se mostra a seguir:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString erro;
TQString erro;
QCString NomeKSplash;
int pid = 0;
QStringList args;
@ -530,8 +530,8 @@ if (kapp-&gt;startServiceByDesktopName("ksplash", args, &amp;erro, &amp;NomeKSpl
<para>Sempre que quiser mostrar uma mensagem com um ícone ou sem nenhum, use</para>
<programlisting>arg &lt;&lt; QString("nomeIcone") &lt;&lt; QString("nomePrograma") &lt;&lt; QString("Uma descrição");
if (!(c-&gt;send(NomeKSplash, "KSplashIface", "programStarted(QString,QString,QString)", dados))
<programlisting>arg &lt;&lt; TQString("nomeIcone") &lt;&lt; TQString("nomePrograma") &lt;&lt; TQString("Uma descrição");
if (!(c-&gt;send(NomeKSplash, "KSplashIface", "programStarted(TQString,TQString,TQString)", dados))
{
// Algum processamento de erros aqui.
}
@ -596,7 +596,7 @@ X-KSplash-ObjectName=Tema2k
<listitem><para>As classes do 'plugin' deverão oferecer uma função <literal>static</literal> chamada <function>names</function> que devolve uma lista com os nomes pela qual poderá ser invocada.</para></listitem>
<listitem><para>Se o 'plugin' puder ser configurado no módulo do centro de controlo, deverá oferecer uma classe baseada na <literal>ThemeEngineConfig</literal> para a configuração.</para></listitem>
<listitem><para>As classes do 'plugin' deverão reimplementar pelo menos uma das funções virtuais <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> e <function>slotUpdateSteps</function> para serem úteis.</para></listitem>
<listitem><para>O construtor deverá ter a forma <literal>ThemeEngine( QWidget *mae, const char *nome, const QStringList &amp;argumentos )</literal> para que possa ser usada com a <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>O construtor deverá ter a forma <literal>ThemeEngine( TQWidget *mae, const char *nome, const QStringList &amp;argumentos )</literal> para que possa ser usada com a <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>O último requisito poderá parecer complicado mas, como veremos mais tarde, ao adicionar uma única linha aos seus ficheiros de código, você poderá normalmente ignorá-lo.</para>
</sect1>
@ -629,11 +629,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -650,7 +650,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mTexto &amp;&amp; mTexto-&gt;text() != s ) mTexto-&gt;setText( s );
};
@ -661,15 +661,15 @@ private:
QLabel *mTexto;
RotWidget *mRotacao;
QColor mTCorFundo, mTCorTexto, mRotCor1, mRot2, mCorEstado;
TQColor mTCorFundo, mTCorTexto, mRotCor1, mRot2, mCorEstado;
int mRotVelocidade;
QString mTitulo, mLogotipo;
TQString mTitulo, mLogotipo;
};
#endif
</programlisting>
</example>
<para>Vamos então analisar a listagem em cima. A classe <classname>Theme2k</classname> satisfaz as convenções de nomes e herda da classe <classname>ThemeEngine</classname>. Ela contém um método <methodname>Theme2k::names()</methodname>, e tem um construtor que recebe os parâmetros obrigatórios: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> e também contém um método simples <methodname>Theme2k::slotSetText()</methodname>. De momento, não se preocupe com a classe <classname>RotWidget</classname>. É um pequeno item que oferece alguma beleza visual para o utilizador. O nosso 'plugin' é muito simples e não mostra nenhuns ícones nem nenhuma barra de progresso. Se você quiser mostrar os ícones, implemente de novo a função <function>slotSetPixmap</function>. Existem funções semelhantes para definir o intervalo da barra de progresso (<function>slotUpdateSteps</function>) e para incrementar (<function>slotUpdateProgress</function>) o passo actual. </para>
<para>Vamos então analisar a listagem em cima. A classe <classname>Theme2k</classname> satisfaz as convenções de nomes e herda da classe <classname>ThemeEngine</classname>. Ela contém um método <methodname>Theme2k::names()</methodname>, e tem um construtor que recebe os parâmetros obrigatórios: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> e também contém um método simples <methodname>Theme2k::slotSetText()</methodname>. De momento, não se preocupe com a classe <classname>RotWidget</classname>. É um pequeno item que oferece alguma beleza visual para o utilizador. O nosso 'plugin' é muito simples e não mostra nenhuns ícones nem nenhuma barra de progresso. Se você quiser mostrar os ícones, implemente de novo a função <function>slotSetPixmap</function>. Existem funções semelhantes para definir o intervalo da barra de progresso (<function>slotUpdateSteps</function>) e para incrementar (<function>slotUpdateProgress</function>) o passo actual. </para>
</sect1>
<sect1 id="Implementation">
<title>Implementação do 'plugin'</title>
@ -682,7 +682,7 @@ private:
<para>A macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> é declarada no ficheiro <filename>kgenericfactory.h</filename>. Sigamos para o construtor! Dado que este é um 'plugin' muito simples, assim o é também o construtor.</para>
<example>
<title>Construtor do 'plugin'</title>
<programlisting>Theme2k::Theme2k( QWidget *mae, const char *nome, const QStringList &amp;argumentos )
<programlisting>Theme2k::Theme2k( TQWidget *mae, const char *nome, const QStringList &amp;argumentos )
:ThemeEngine( mae, nome, argumentos )
{
readSettings();
@ -702,23 +702,23 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor TCorFundoOmissao( Qt::darkBlue );
QColor TCorTextoOmissao( Qt::white );
TQColor TCorFundoOmissao( Qt::darkBlue );
TQColor TCorTextoOmissao( Qt::white );
mTCorFundo = cfg-&gt;readColorEntry( "Cor de Fundo do Título", &amp;TCorFundoOmissao );
mTCorTexto = cfg-&gt;readColorEntry( "Cor do Texto do Título", &amp;TCorTextoOmissao );
mCorEstado = cfg-&gt;readColorEntry("Cor do Texto do Estado", &amp;mTCorFundo );
QColor Rot1Omissao( Qt::darkBlue );
QColor Rot2Omissao( Qt::cyan );
TQColor Rot1Omissao( Qt::darkBlue );
TQColor Rot2Omissao( Qt::cyan );
mRotCor1 = cfg-&gt;readColorEntry( "Cor 1 da Rotação", &amp;Rot1Omissao );
mRotCor2 = cfg-&gt;readColorEntry( "Cor 2 da Rotação", &amp;Rot2Omissao );
mRotVelocidade = cfg-&gt;readNumEntry( "Velocidade da Rotação", 30 );
mTitulo = cfg-&gt;readEntry( "Título da Janela", i18n("Espere por favor") );
mLogotipo = cfg-&gt;readEntry( "Ficheiro do Logotipo", QString::null );
mLogotipo = cfg-&gt;readEntry( "Ficheiro do Logotipo", TQString::null );
}
</programlisting>
</example>
@ -830,7 +830,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -854,8 +854,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -896,10 +896,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -907,14 +907,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -933,11 +933,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -948,7 +948,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -971,9 +971,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Funções DCOP</title>
<para>A interface de <abbrev>DCOP</abbrev> do &kstars; inclui as seguintes funções: <itemizedlist>
<listitem><para><function> lookTowards( const QString direccao )</function>: Aponta o foco da visualização para uma direcção indicada pelo argumento. Este poderá ser o nome de qualquer objecto no céu ou uma das palavras de direcção: 'zenith' - zénite (ou 'z'), 'north' - norte ('n'), 'northeast' - nordeste (ne), 'east' - este ('e'), 'southeast' - sueste ('se'), 'south' - sul ('s'), 'southwest' - sudoeste ('sw'), 'west' - oeste ('w'), 'northwest' - noroeste ('nw'). </para></listitem>
<listitem><para><function> lookTowards( const TQString direccao )</function>: Aponta o foco da visualização para uma direcção indicada pelo argumento. Este poderá ser o nome de qualquer objecto no céu ou uma das palavras de direcção: 'zenith' - zénite (ou 'z'), 'north' - norte ('n'), 'northeast' - nordeste (ne), 'east' - este ('e'), 'southeast' - sueste ('se'), 'south' - sul ('s'), 'southwest' - sudoeste ('sw'), 'west' - oeste ('w'), 'northwest' - noroeste ('nw'). </para></listitem>
<listitem><para><function> setRaDec( double ar, double dec )</function>: Aponta o foco da visualização para as coordenadas equatoriais indicadas. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Pára durante 't' segundos antes de continuar com os comandos subsequentes do programa. </para></listitem>
<listitem><para><function> waitForKey( const QString t )</function>: Pára a execução do programa até que o utilizador carregue na tecla indicada. Nesta altura, você não poderá indicar combinações de teclas (como o <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); use apenas teclas simples. Você poderá escrever <quote>space</quote> para indicar a barra de espaços. </para></listitem>
<listitem><para><function> waitForKey( const TQString t )</function>: Pára a execução do programa até que o utilizador carregue na tecla indicada. Nesta altura, você não poderá indicar combinações de teclas (como o <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); use apenas teclas simples. Você poderá escrever <quote>space</quote> para indicar a barra de espaços. </para></listitem>
<listitem><para><function> setTracking( bool seguir )</function>: Indica se o modo de seguimento está activo ou não. </para></listitem>
<listitem><para><function> changeViewOption( const QString opcao, const QString valor )</function>: Ajusta uma opção de visualização. Existem dezenas de opções disponíveis; basicamente tudo o que você poderá alterar na <guilabel>Configurar a Janela do &kstars;</guilabel> poderá também aqui ser alterado. O primeiro argumento é o nome da opção (os nomes são extraídos a partir do ficheiro de configuração <filename>kstarsrc</filename>) e o segundo argumento é o valor desejado. O processador dos argumentos está desenhado para ser robusto, por isso se você lhe passar dados inválidos, ele irá falhar de forma ordeira. </para></listitem>
<listitem><para><function> changeViewOption( const TQString opcao, const TQString valor )</function>: Ajusta uma opção de visualização. Existem dezenas de opções disponíveis; basicamente tudo o que você poderá alterar na <guilabel>Configurar a Janela do &kstars;</guilabel> poderá também aqui ser alterado. O primeiro argumento é o nome da opção (os nomes são extraídos a partir do ficheiro de configuração <filename>kstarsrc</filename>) e o segundo argumento é o valor desejado. O processador dos argumentos está desenhado para ser robusto, por isso se você lhe passar dados inválidos, ele irá falhar de forma ordeira. </para></listitem>
<listitem><para><function> setGeoLocation( const QString cidade, const QString provincia, const QString pais )</function>: Muda a localização de observação para a cidade indicada. Se não existir nenhuma cidade que corresponda ao texto dos argumentos, então não acontecerá nada. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString cidade, const TQString provincia, const TQString pais )</function>: Muda a localização de observação para a cidade indicada. Se não existir nenhuma cidade que corresponda ao texto dos argumentos, então não acontecerá nada. </para></listitem>
<listitem><para><function> stop()</function> [relógio]: Pára o relógio da simulação. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Funções Genéricas do Dispositivo: Funções para estabelecer/desligar os dispositivos, etc.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString nomeDispositivo, bool usoLocal)</function> : Estabelece um serviço do INDI quer como local quer como servidor.</para></listitem>
<listitem><para><function>shutdownINDI (QString nomeDispositivo)</function> : Desliga o serviço do INDI.</para></listitem>
<listitem><para><function>switchINDI(QString nomeDispositivo, bool ligar)</function> : Liga ou desliga um dispositivo do INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString nomeDispositivo, QString porto)</function> : Indica o porto de ligação do dispositivo.</para></listitem>
<listitem><para><function>setINDIAction(QString nomeDispositivo, QString accao)</function> : Activa uma acção do INDI. A acção poderá ser qualquer <emphasis>elemento</emphasis> de uma <emphasis>propriedade de opção</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString nomeDispositivo, QString accao)</function> : Coloca a execução do programa em pausa até que a acção <emphasis>propriedade</emphasis> da acção indicada seja devolvida com um estado OK.</para></listitem>
<listitem><para><function>startINDI (TQString nomeDispositivo, bool usoLocal)</function> : Estabelece um serviço do INDI quer como local quer como servidor.</para></listitem>
<listitem><para><function>shutdownINDI (TQString nomeDispositivo)</function> : Desliga o serviço do INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString nomeDispositivo, bool ligar)</function> : Liga ou desliga um dispositivo do INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString nomeDispositivo, TQString porto)</function> : Indica o porto de ligação do dispositivo.</para></listitem>
<listitem><para><function>setINDIAction(TQString nomeDispositivo, TQString accao)</function> : Activa uma acção do INDI. A acção poderá ser qualquer <emphasis>elemento</emphasis> de uma <emphasis>propriedade de opção</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString nomeDispositivo, TQString accao)</function> : Coloca a execução do programa em pausa até que a acção <emphasis>propriedade</emphasis> da acção indicada seja devolvida com um estado OK.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções do Telescópio: Funções para controlar o movimento e o estado do telescópio.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString nomeDispositivo, QString accao)</function> : Muda o modo ou a acção do telescópio. As opções disponíveis são a SLEW, TRACK, SYNC, PARK e a ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString nomeDispositivo, double AR, double DEC)</function> : Define as coordenadas-alvo JNow do telescópio para uma dada <emphasis>AR</emphasis> e <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString nomeDispositivo, QString nomeObjecto)</function> : Configura as coordenadas-alvo JNow do telescópio para as coordenadas do <emphasis>nomeObjecto</emphasis>. O KStars irá procurar o nome do objecto na sua base de dados e irá obter a AR e a Dec deste, se for encontrado.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString nomeDispositivo, double longitude, double latitude)</function> : Configura a localização geográfica do telescópio para a latitude e longitude indicadas. A longitude é medida a partir de Greenwich, no Reino-Unido, para Este. Contudo, embora seja comum usar longitudes negativas para o hemisfério ocidental, o INDI está à espera de valores de longitude entre 0 e 360 graus. Como tal, se estiver uma longitude negativa, basta adicionar 360 graus para obter o valor esperado pelo INDI. Por exemplo, as coordenadas de Calgary, no Canadá, correspondem no &kstars; à longitude: -114 04 58 - latitude: 51 02 58. Como tal, o INDI iria necessitar da longitude = 360 - 114,083 = 245,917 graus.</para></listitem>
<listitem><para><function>setINDIUTC(QString nomeDispositivo, QString dataHomeUTC)</function> : Configura a data e hora UTC do telescópio no formato ISO 8601. O formato é igual a AAAA-MM-DDTHH:MM:SS (p.ex. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString nomeDispositivo, TQString accao)</function> : Muda o modo ou a acção do telescópio. As opções disponíveis são a SLEW, TRACK, SYNC, PARK e a ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString nomeDispositivo, double AR, double DEC)</function> : Define as coordenadas-alvo JNow do telescópio para uma dada <emphasis>AR</emphasis> e <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString nomeDispositivo, TQString nomeObjecto)</function> : Configura as coordenadas-alvo JNow do telescópio para as coordenadas do <emphasis>nomeObjecto</emphasis>. O KStars irá procurar o nome do objecto na sua base de dados e irá obter a AR e a Dec deste, se for encontrado.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString nomeDispositivo, double longitude, double latitude)</function> : Configura a localização geográfica do telescópio para a latitude e longitude indicadas. A longitude é medida a partir de Greenwich, no Reino-Unido, para Este. Contudo, embora seja comum usar longitudes negativas para o hemisfério ocidental, o INDI está à espera de valores de longitude entre 0 e 360 graus. Como tal, se estiver uma longitude negativa, basta adicionar 360 graus para obter o valor esperado pelo INDI. Por exemplo, as coordenadas de Calgary, no Canadá, correspondem no &kstars; à longitude: -114 04 58 - latitude: 51 02 58. Como tal, o INDI iria necessitar da longitude = 360 - 114,083 = 245,917 graus.</para></listitem>
<listitem><para><function>setINDIUTC(TQString nomeDispositivo, TQString dataHomeUTC)</function> : Configura a data e hora UTC do telescópio no formato ISO 8601. O formato é igual a AAAA-MM-DDTHH:MM:SS (p.ex. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções da Câmara/CCD: Funções para controlar as propriedades e o estado da câmara/CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString nomeDispositivo, int temp)</function> : Configura a temperatura-alvo do 'chip' CCD em graus Celsius (centígrados).</para></listitem>
<listitem><para><function>setINDIFrameType(QString nomeDispositivo, QString tipo)</function> : Configura o tipo de imagem do CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString nomeDispositivo, int tempoLimite)</function> : Inicia a exposição do CCD/Câmara durante o período em segundos indicado em <emphasis>tempoLimite</emphasis>.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString nomeDispositivo, int temp)</function> : Configura a temperatura-alvo do 'chip' CCD em graus Celsius (centígrados).</para></listitem>
<listitem><para><function>setINDIFrameType(TQString nomeDispositivo, TQString tipo)</function> : Configura o tipo de imagem do CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString nomeDispositivo, int tempoLimite)</function> : Inicia a exposição do CCD/Câmara durante o período em segundos indicado em <emphasis>tempoLimite</emphasis>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções do Sistema de Foco: Funções para controlar o movimento e o estado do sistema de foco.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString nomeDispositivo, QString accao)</function> : Configura a velocidade do sistema de foco. As opções disponíveis são a FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e a FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString nomeDispositivo, int tempoLimite)</function> : Configura a duração em segundos para quaisquer operações subsequentes do 'startINDIFocus'.</para></listitem>
<listitem><para><function>startINDIFocus(QString nomeDispositivo, int dirFoco)</function> : Move o sistema de foco quer para dentro (dirFoco = 0) quer para fora (dirFoco = 1). A velocidade e a duração desta operação é definida pelas funções <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString nomeDispositivo, TQString accao)</function> : Configura a velocidade do sistema de foco. As opções disponíveis são a FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM e a FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString nomeDispositivo, int tempoLimite)</function> : Configura a duração em segundos para quaisquer operações subsequentes do 'startINDIFocus'.</para></listitem>
<listitem><para><function>startINDIFocus(TQString nomeDispositivo, int dirFoco)</function> : Move o sistema de foco quer para dentro (dirFoco = 0) quer para fora (dirFoco = 1). A velocidade e a duração desta operação é definida pelas funções <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções do Filtro: Funções para controlar a posição do filtro.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString nomeDispositivo, int num_filtro)</function> : Muda a posição do filtro para <varname>num_filtro</varname>. O utilizador poderá atribuir nomes alternativos aos números dos filtros na janela para <guimenuitem>Configurar o INDI</guimenuitem>, no menu <guimenu>Dispositivos</guimenu> (p.ex. Filtro 1 = Vermelho, Filtro 2 = Verde..etc).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString nomeDispositivo, int num_filtro)</function> : Muda a posição do filtro para <varname>num_filtro</varname>. O utilizador poderá atribuir nomes alternativos aos números dos filtros na janela para <guimenuitem>Configurar o INDI</guimenuitem>, no menu <guimenu>Dispositivos</guimenu> (p.ex. Filtro 1 = Vermelho, Filtro 2 = Verde..etc).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Você poderá obter uma lista das interfaces de &DCOP; disponíveis e usar os argumentos correctos, como é demonstrado neste exemplo: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -753,7 +753,7 @@ public:
<para>é algo diferente de fazer uma referência a um ponteiro NULL. Você não indicou ao objecto de todo o que ele é, e agora irá tentar usá-lo. A questão aqui é que você deseja ter uma instância local de um objecto Arts::Synth_PLAY. Claro que você poderá querer ter algo diferente (como criar o objecto noutro local qualquer, ou usar um objecto remoto existente). Contudo, é um atalho conveniente para criar objectos. A criação tardia não irá funcionar logo que tenha atribuído outra coisa qualquer (como por exemplo uma referência nula). </para>
<para>Os termos equivalentes em C++ seriam <programlisting>
QWidget* janela;
TQWidget* janela;
janela-&gt;show();
</programlisting> o que obviamente, em C++, iria dar um estoiro garantido. Por isso, isto é diferente aqui. Esta criação tardia é enganadora, porque não quer dizer que exista necessariamente uma implementação para a sua interface. </para>

@ -1219,7 +1219,7 @@ struct TypeDef {
<para>Não existe necessidade de basear uma plataforma de multimédia no &Qt;. Ao decidir isso, e usando toda aquela serialização e outras funcionalidades giras do &Qt;, iria conduzir facilmente a que a plataforma se tornasse apenas para o &Qt; ou (para apenas para o &kde;). Quer dizer: assim que se vir que os GNOMEs comecem a usar o &DCOP;, também, ou algo do género, provavelmente o autor ficará errado. </para>
<para>Enquanto se sabe que o &DCOP; basicamente não sabe nada sobre os tipos de dados que envia, de modo que você poderia usar o &DCOP; sem usar o &Qt;, veja como é que é usado na utilização do dia-a-dia do &kde;: as pessoas enviam tipos como o <classname>QString</classname>, o <classname>QRect</classname>, o <classname>QPixmap</classname>, o <classname>QCString</classname>, ..., de um lado para o outro. Estes usam a serialização do &Qt;. Por isso, se alguém optar por suportar o &DCOP; num programa do GNOME, ele teria de afirmar que usava os tipos <classname>QString</classname>,... (ainda que não o faça, de facto) e emular a forma como o &Qt; faz a transmissão, ou então teria de enviar outros tipos de cadeias de caracteres, imagens e rectângulos, o que deixaria de ter possibilidades de interoperabilidade. </para>
<para>Enquanto se sabe que o &DCOP; basicamente não sabe nada sobre os tipos de dados que envia, de modo que você poderia usar o &DCOP; sem usar o &Qt;, veja como é que é usado na utilização do dia-a-dia do &kde;: as pessoas enviam tipos como o <classname>TQString</classname>, o <classname>QRect</classname>, o <classname>QPixmap</classname>, o <classname>QCString</classname>, ..., de um lado para o outro. Estes usam a serialização do &Qt;. Por isso, se alguém optar por suportar o &DCOP; num programa do GNOME, ele teria de afirmar que usava os tipos <classname>TQString</classname>,... (ainda que não o faça, de facto) e emular a forma como o &Qt; faz a transmissão, ou então teria de enviar outros tipos de cadeias de caracteres, imagens e rectângulos, o que deixaria de ter possibilidades de interoperabilidade. </para>
<para>Bem, seja o que for, o &arts; pretendeu sempre funcionar com ou sem o &kde;, com ou sem o &Qt;, com ou sem o X11, e talvez com ou sem o &Linux; (e não há problema nenhum com as pessoas que o transpõem para um sistema operativo proprietário conhecido). </para>

@ -1697,7 +1697,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>cancela um alarme já agendado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>ficheiroCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>ficheiroCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1739,7 +1739,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>despoleta um alarme já escalonado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>ficheiroCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>ficheiroCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1783,7 +1783,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>despoleta ou cancela um alarme já escalonado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>ficheiroCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>ficheiroCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1833,11 +1833,11 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>escalonar uma nova mensagem de alarme.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, const QColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, const TQColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, const QColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, const TQColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, const QColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, const TQColor&amp; <replaceable>texto</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opções</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
</synopsis>
<refsect2>
@ -1874,7 +1874,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>fundo</parameter></term>
<listitem>
<para>Indica a cor de fundo usada para mostrar a mensagem. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>QColor::name()</methodname>) onde o RR, GG and BB são valores de dois algarismos em hexadecimal para o vermelho, verde e azul. Em alternativa, o texto poderá ser qualquer um dos outros formatos aceites pelo <methodname>QColor::setNamedColor()</methodname>, como o nome de uma cor na base de dados de cores do X (&eg; <quote>red</quote> ou <quote>steelblue</quote>). Ponha o texto vazio para indicar a cor de fundo por omissão actual.</para>
<para>Indica a cor de fundo usada para mostrar a mensagem. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>TQColor::name()</methodname>) onde o RR, GG and BB são valores de dois algarismos em hexadecimal para o vermelho, verde e azul. Em alternativa, o texto poderá ser qualquer um dos outros formatos aceites pelo <methodname>TQColor::setNamedColor()</methodname>, como o nome de uma cor na base de dados de cores do X (&eg; <quote>red</quote> ou <quote>steelblue</quote>). Ponha o texto vazio para indicar a cor de fundo por omissão actual.</para>
</listitem>
</varlistentry>
@ -1975,11 +1975,11 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>agendar um novo alarme que mostra o conteúdo de um ficheiro de texto ou de imagem.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const QString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleFile(const TQString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const QString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleFile(const TQString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const QString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const QColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const QString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
<synopsis>bool scheduleFile(const TQString&amp; <replaceable>URL</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, const TQColor&amp; <replaceable>fundo</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, const TQString&amp; <replaceable>urlAudio</replaceable>, int <replaceable>chamadaAtencao</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
</synopsis>
<refsect2>
@ -2016,7 +2016,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>fundo</parameter></term>
<listitem>
<para>Indica a cor de fundo usada para mostrar o ficheiro. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>QColor::name()</methodname>) onde o RR, GG and BB são valores de dois algarismos em hexadecimal para o vermelho, verde e azul. Em alternativa, o texto poderá ser qualquer um dos formatos aceites pelo <methodname>QColor::setNamedColor()</methodname>, com o nome de uma cor na base de dados de cores do X (&eg; <quote>red</quote> ou <quote>steelblue</quote>). Ponha o texto vazio para indicar a cor de fundo por omissão actual.</para>
<para>Indica a cor de fundo usada para mostrar o ficheiro. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>TQColor::name()</methodname>) onde o RR, GG and BB são valores de dois algarismos em hexadecimal para o vermelho, verde e azul. Em alternativa, o texto poderá ser qualquer um dos formatos aceites pelo <methodname>TQColor::setNamedColor()</methodname>, com o nome de uma cor na base de dados de cores do X (&eg; <quote>red</quote> ou <quote>steelblue</quote>). Ponha o texto vazio para indicar a cor de fundo por omissão actual.</para>
</listitem>
</varlistentry>
@ -2102,11 +2102,11 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>agenda um novo alarme que executa um determinado comando.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComandos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
</synopsis>
<refsect2>
@ -2208,11 +2208,11 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>agenda um novo alarme que envia uma mensagem de e-mail.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>idRemetente</replaceable>, const QString&amp; <replaceable>enderecos</replaceable>, const QString&amp; <replaceable>assunto</replaceable>, const QString&amp; <replaceable>mensagem</replaceable>, const QString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>idRemetente</replaceable>, const TQString&amp; <replaceable>enderecos</replaceable>, const TQString&amp; <replaceable>assunto</replaceable>, const TQString&amp; <replaceable>mensagem</replaceable>, const TQString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>idRemetente</replaceable>, const QString&amp; <replaceable>enderecos</replaceable>, const QString&amp; <replaceable>assunto</replaceable>, const QString&amp; <replaceable>mensagem</replaceable>, const QString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>idRemetente</replaceable>, const TQString&amp; <replaceable>enderecos</replaceable>, const TQString&amp; <replaceable>assunto</replaceable>, const TQString&amp; <replaceable>mensagem</replaceable>, const TQString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, int <replaceable>numeroRepeticoes</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>idRemetente</replaceable>, const QString&amp; <replaceable>enderecos</replaceable>, const QString&amp; <replaceable>assunto</replaceable>, const QString&amp; <replaceable>mensagem</replaceable>, const QString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>idRemetente</replaceable>, const TQString&amp; <replaceable>enderecos</replaceable>, const TQString&amp; <replaceable>assunto</replaceable>, const TQString&amp; <replaceable>mensagem</replaceable>, const TQString&amp; <replaceable>anexos</replaceable>, const QDateTime&amp; <replaceable>dataHora</replaceable>, int <replaceable>cancelarSeAtrasado</replaceable>, int <replaceable>opcoes</replaceable>, int <replaceable>tipoRepeticaoSimples</replaceable>, int <replaceable>intervalo</replaceable>, const QDateTime&amp; <replaceable>dataFim</replaceable>)
</synopsis>
<refsect2>
@ -2341,7 +2341,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Mostra a <link linkend="alarm-edit-dlg">janela de edição do alarme</link> para editar um alarme.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -2379,7 +2379,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Isto mostra a <link linkend="alarm-edit-dlg">janela de edição do alarme</link> para editar um alarme novo.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>nomeModelo</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>nomeModelo</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Impresso a: 2004-07-13 18:10
<refpurpose>Devolve a versão do &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Impresso a: 2004-07-13 18:10
<refpurpose>Sai do &karm;.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Impresso a: 2004-07-13 18:10
<refpurpose>Verifica se o item por-fazer de topo existe.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString nomeTarefa)
<synopsis>TQString hastodo(TQString nomeTarefa)
</synopsis>
<refsect2>
<title>Parâmetros</title>
@ -786,7 +786,7 @@ Impresso a: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Descrição</title>
<para>O <function>hastodo(QString nomeTarefa)</function> é uma chamada de &DCOP; que procura por um item por-fazer com o nome indicado. Se for encontrado, devolve o UID do iCalendar que identifica este item. Se não for encontrado, devolve um texto vazio. </para>
<para>O <function>hastodo(TQString nomeTarefa)</function> é uma chamada de &DCOP; que procura por um item por-fazer com o nome indicado. Se for encontrado, devolve o UID do iCalendar que identifica este item. Se não for encontrado, devolve um texto vazio. </para>
<para>O ficheiro iCalendar que o &karm; tem aberto de momento é o ficheiro que será pesquisado. Todas as árvores de itens por-fazer serão pesquisadas, não apenas os de topo. Se mais do que um item por-fazer corresponder a esse nome, será devolvido o primeiro.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Impresso a: 2004-07-13 18:10
<refpurpose>Adiciona um novo item por-fazer.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString nomeItem)
<synopsis>TQString addtodo(TQString nomeItem)
</synopsis>
<refsect2>
<title>Parâmetros</title>
@ -817,7 +817,7 @@ Impresso a: 2004-07-13 18:10
<refsect1>
<title>Descrição</title>
<para>O <function>addtodo(QString nomeItem)</function> é uma chamada de &DCOP; que adiciona um item por-fazer de topo novo ao ficheiro actual. É devolvido o UID do novo item por-fazer. </para>
<para>O <function>addtodo(TQString nomeItem)</function> é uma chamada de &DCOP; que adiciona um item por-fazer de topo novo ao ficheiro actual. É devolvido o UID do novo item por-fazer. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Exemplos</title>
<para>Para mostrar alguma ajuda sobre a classe <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Para mostrar alguma ajuda sobre a classe <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>O segundo objecto do nosso programa é o botão, uma instância da classe <classname>QPushButton</classname>. A partir dos dois construtores fornecidos para criar uma instância, nós optámos pelo segundo: este aceita um texto, o qual é o conteúdo do texto do botão; neste caso, é o texto "Olá mundo!". Aí, chamou-se o método <methodname>resize()</methodname> para alterar as dimensões do botão de acordo com o seu conteúdo - o botão tem de ser maior para tornar o texto completamente visível. </para>
<para>Mas e o método <methodname>show()</methodname>? Agora, você verá que, como a maioria dos outros itens, a classe <classname>QPushButton</classname> baseia-se numa herança simples ou, como diz a documentação, herda de <classname>QButton</classname>. Siga a referência à classe <classname>QButton</classname>. Isto mostra-lhe que bastantes outros itens herdados pela <classname>QPushButton</classname>, os quais iremos usar posteriormente para explicar o mecanismo de 'signals'/'slots' De qualquer forma, o método <methodname>show()</methodname> não aparece, como tal, deverá ser um método que é fornecido por herança, da mesma forma. A classe que a <classname>QButton</classname> herda é a <classname>QWidget</classname>. Siga de novo a ligação e você irá ver um conjunto enorme de classes que a <classname>QWidget</classname> oferece, incluindo o método <methodname>show()</methodname>. Agora dá para perceber o que foi feito no exemplo com o botão: <orderedlist>
<para>Mas e o método <methodname>show()</methodname>? Agora, você verá que, como a maioria dos outros itens, a classe <classname>QPushButton</classname> baseia-se numa herança simples ou, como diz a documentação, herda de <classname>QButton</classname>. Siga a referência à classe <classname>QButton</classname>. Isto mostra-lhe que bastantes outros itens herdados pela <classname>QPushButton</classname>, os quais iremos usar posteriormente para explicar o mecanismo de 'signals'/'slots' De qualquer forma, o método <methodname>show()</methodname> não aparece, como tal, deverá ser um método que é fornecido por herança, da mesma forma. A classe que a <classname>QButton</classname> herda é a <classname>TQWidget</classname>. Siga de novo a ligação e você irá ver um conjunto enorme de classes que a <classname>TQWidget</classname> oferece, incluindo o método <methodname>show()</methodname>. Agora dá para perceber o que foi feito no exemplo com o botão: <orderedlist>
<listitem><para>Cria uma instância de <classname>QPushButton</classname>, utiliza o segundo construtor para configurar o texto do botão</para></listitem>
<listitem><para>Muda o tamanho do 'widget' de acordo com o seu conteúdo</para></listitem>
<listitem><para>Escolhe o 'widget' como o 'widget' principal da instância do <classname>QApplication</classname> como</para></listitem>
<listitem><para>Diz ao 'widget' para se mostrar no ecrã chamando <methodname>show()</methodname>, um método herdado de <classname>QWidget</classname></para></listitem>
<listitem><para>Diz ao 'widget' para se mostrar no ecrã chamando <methodname>show()</methodname>, um método herdado de <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>Depois de invocar o método <methodname>exec()</methodname>, a aplicação fica visível para o utilizador, mostrando uma janela com o botão a dizer "Olá mundo!". Nota: os programas gráficos comportam-se de forma ligeiramente diferente da das aplicações procedimentais. A questão principal aqui é que a aplicação entra num estado chamado de "ciclo de eventos principal". Isto significa que o programa tem de esperar pelas acções do utilizador e então reagir a elas e que, numa aplicação do Qt, o programa terá de entrar no ciclo de eventos principal para conseguir começar a tratá-los. A próxima secção diz-lhe em resumo o que isto significa para o programador e o que é que o Qt oferece para processar os eventos do utilizador. </para>
<note><para>Para os utilizadores já avançados: O botão não tem nenhuma janela-mãe declarada no construtor, o que significa que é um item gráfico de topo por si só e corre num ciclo de eventos local que não precisa de esperar pelo ciclo de eventos principal. Veja a documentação da classe QWidget e o Guia de Referência da Biblioteca do KDE</para>
<note><para>Para os utilizadores já avançados: O botão não tem nenhuma janela-mãe declarada no construtor, o que significa que é um item gráfico de topo por si só e corre num ciclo de eventos local que não precisa de esperar pelo ciclo de eventos principal. Veja a documentação da classe TQWidget e o Guia de Referência da Biblioteca do KDE</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Agora vamos dar "vida" à aplicação, processando os eventos do utilizador. De um modo geral, o utilizador tem duas formas de interagir com um programa: o rato e o teclado. Para ambas as formas, uma interface gráfica tem de fornecer métodos que detectem as acções e métodos que façam algo em reacção a estas acções. </para>
<para>O sistema de janelas envia deste modo todos os eventos de interacção para a aplicação respectiva. A <classname>QApplication</classname> envia-os então para a janela activa como um <classname>QEvent</classname> e os próprios itens terão de decidir o que fazer com eles. Um item recebe o evento e processa o <methodname>QWidget::event(QEvent*)</methodname>, que decide então qual o evento que foi executado e como reagir; o <methodname>event()</methodname> é deste modo o tratador de eventos principal. Aí, o método <methodname>event()</methodname> passa o evento para os denominados de filtros de eventos que determinam o que se passou e o que fazer com o evento. Se nenhum filtro responder como responsável pelo evento, os tratadores de eventos especializados são invocados. Deste modo, pode-se optar entre: <itemizedlist>
<para>O sistema de janelas envia deste modo todos os eventos de interacção para a aplicação respectiva. A <classname>QApplication</classname> envia-os então para a janela activa como um <classname>QEvent</classname> e os próprios itens terão de decidir o que fazer com eles. Um item recebe o evento e processa o <methodname>TQWidget::event(QEvent*)</methodname>, que decide então qual o evento que foi executado e como reagir; o <methodname>event()</methodname> é deste modo o tratador de eventos principal. Aí, o método <methodname>event()</methodname> passa o evento para os denominados de filtros de eventos que determinam o que se passou e o que fazer com o evento. Se nenhum filtro responder como responsável pelo evento, os tratadores de eventos especializados são invocados. Deste modo, pode-se optar entre: <itemizedlist>
<listitem><para>Eventos de teclados -- teclas TAB e Shift-TAB:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Lembre-se que todas as funções de eventos são virtuais e protegidas; como tal, você poderá reimplementar os eventos que necessitar nos seus próprios itens gráficos e indicar como é que o seu item terá de reagir. O <classname>QWidget</classname> contém também outros métodos virtuais que poderão ser úteis nos seus programas; de qualquer forma, é suficiente conhecer o <classname>QWidget</classname> bastante bem. </para>
<para>Lembre-se que todas as funções de eventos são virtuais e protegidas; como tal, você poderá reimplementar os eventos que necessitar nos seus próprios itens gráficos e indicar como é que o seu item terá de reagir. O <classname>TQWidget</classname> contém também outros métodos virtuais que poderão ser úteis nos seus programas; de qualquer forma, é suficiente conhecer o <classname>TQWidget</classname> bastante bem. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Interacção de Objectos através de 'Signals' e 'Slots'</title>
<para>Agora chegámos às vantagens mais óbvias da plataforma do Qt: o mecanismo de 'signals'/'slots'. Isto oferece uma solução bastante útil e fácil de os objectos interagirem entre si, o que normalmente é resolvido por funções de resposta ('callback') pelas bibliotecas do X-Window. Dado que esta documentação necessita de uma programação restrita e normalmente torna a criação de interface do utilizador muito complicada (como é referido pela documentação do Qt e é explicado no texto 'Programming with Qt' de K.Dalheimer), a Troll Tech inventou um novo sistema onde os objectos podem emitir sinais ('signals') que podem estar associados a métodos denominados por 'slots'. Para a parte de C++ do programador, ele só terá de conhecer algumas coisas sobre este mecanismo: <itemizedlist>
<listitem><para>a declaração de uma classe que utilize 'signals'/'slots' tem que ter a macro TQ_OBJECT no início (sem ponto e vírgula); e tem que ser derivada da classe <classname>QObject</classname> </para></listitem>
<listitem><para>a declaração de uma classe que utilize 'signals'/'slots' tem que ter a macro TQ_OBJECT no início (sem ponto e vírgula); e tem que ser derivada da classe <classname>TQObject</classname> </para></listitem>
<listitem><para>um 'signal' pode ser emitido através da palavra chave 'emit', por exemplo, emit signal(parâmetros);, de qualquer método membro de uma classe que permite 'signals'/'slots' </para></listitem>
<listitem><para>todos os 'signals' utilizados pelas classes que não são herdados tem que ser adicionados à declaração da classe numa secção 'signals' </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>o compilador de meta-objectos 'moc' tem de correr sobre o ficheiro de inclusão para expandir as macros e para produzir a implementação (que é necessário conhecer). Os ficheiros de resultado do 'moc' são compilados também pelo compilador de C++. </para></listitem>
</itemizedlist>
</para>
<para>Outra forma de usar os 'signals' sem derivar da classe <classname>QObject</classname> é usar a classe <classname>QSignal</classname> - veja a documentação de referência para mais informações e para um exemplo de utilização. No seguinte, assume-se que você vai derivar de <classname>QObject</classname>. </para>
<para>Outra forma de usar os 'signals' sem derivar da classe <classname>TQObject</classname> é usar a classe <classname>QSignal</classname> - veja a documentação de referência para mais informações e para um exemplo de utilização. No seguinte, assume-se que você vai derivar de <classname>TQObject</classname>. </para>
<para>Desta forma, a sua classe é capaz de enviar 'signals' para todo o lado e consegue fornecer 'slots' aos quais os 'signals' se possam ligar. Usando os 'signals', você não terá de se preocupar com que os recebe - só tem de emitir os 'signals' e qual o 'slot' que lhe deseja ligar para reagir à emissão. Os 'slots' também podem ser usados como métodos normais durante a implementação. </para>
<para>Agora, para ligar um 'signal' a um 'slot', você terá de usar os métodos <methodname>connect()</methodname> que são fornecidos pelo <classname>QObject</classname> ou, quando for possível, os métodos especiais que os objectos fornecem para definir a ligação a um dado 'signal'. </para>
<para>Agora, para ligar um 'signal' a um 'slot', você terá de usar os métodos <methodname>connect()</methodname> que são fornecidos pelo <classname>TQObject</classname> ou, quando for possível, os métodos especiais que os objectos fornecem para definir a ligação a um dado 'signal'. </para>
<sect3 id="c1s2s4s1">
<title>Exemplo de Utilização</title>
@ -262,9 +262,9 @@ return a.exec();
}
</programlisting>
</para>
<para>Como vê, a única adição para dar ao botão mais interacção é usar um método <methodname>connect() </methodname>: o <methodname>connect(&amp;ola, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>; é tudo o que você tem para adicionar. Qual é o significado? A declaração da classe do QObject fala sobre o método <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const QObject * emissor, const char * signal, const QObject * receptor, const char * membro ) </methodname></para>
<para>Isto significa que você terá de indicar um ponteiro para uma instância de um <classname>QObject</classname> que é o emissor do 'signal', o que significa que ele poderá emitir este 'signal' como primeiro parâmetro; depois, terá de indicar o 'signal' a que se deseja ligar. Os últimos dois parâmetros são o objecto receptor que contém um 'slot' seguido da função-membro que é, de facto, o 'slot' que será executado devido à emissão do 'signal'. </para>
<para>Como vê, a única adição para dar ao botão mais interacção é usar um método <methodname>connect() </methodname>: o <methodname>connect(&amp;ola, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>; é tudo o que você tem para adicionar. Qual é o significado? A declaração da classe do TQObject fala sobre o método <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const TQObject * emissor, const char * signal, const TQObject * receptor, const char * membro ) </methodname></para>
<para>Isto significa que você terá de indicar um ponteiro para uma instância de um <classname>TQObject</classname> que é o emissor do 'signal', o que significa que ele poderá emitir este 'signal' como primeiro parâmetro; depois, terá de indicar o 'signal' a que se deseja ligar. Os últimos dois parâmetros são o objecto receptor que contém um 'slot' seguido da função-membro que é, de facto, o 'slot' que será executado devido à emissão do 'signal'. </para>
<para>Usando os 'signals' e 'slots', os objectos do seu programa podem interagir uns com os outros facilmente sem terem de explicitamente depender do tipo do objecto receptor. Você irá aprender mais sobre a utilização deste mecanismo para uma utilização produtiva posteriormente neste manual. Se quiser saber mais informações sobre o mecanismo de 'signals'/'slots' poderá ir ao <ulink url="developer.kde.org/documentation/library/libraryref.html">Guia de Referência da Biblioteca do KDE</ulink> e à <ulink url="doc.trolltech.com">referência 'online' do Qt</ulink>. </para>
</sect3>
</sect2>
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Você irá constatar que, primeiro, mudámos da <classname>QApplication</classname> para a <classname>TDEApplication </classname>. Para além disso, tivemos de mudar o método <methodname>setMainWidget()</methodname> para <methodname>setTopWidget</methodname>, o qual a classe <classname>TDEApplication</classname> usa para indicar qual o item principal. É tudo! A sua primeira aplicação do KDE está pronta - você só terá de indicar ao compilador a localização dos ficheiros de inclusão e ao editor de ligações para compilar com a biblioteca 'tdecore', através da opção'-ltdecore'. </para>
<para>Dado que já sabe o que, pelo menos, a função <function>main()</function> necessita geralmente e como é que uma aplicação fica visível e permite a interacção com o utilizador e com os objectos, iremos agora para o próximo capítulo, onde a nossa primeira aplicação será criada com o &tdevelop;. Aí, você também poderá testar tudo o que foi mencionado antes e ver os efeitos. </para>
<para>O que você deverá ter olhado adicionalmente até agora é a documentação de referência do Qt, especialmente a as classes <classname>QApplication</classname>, <classname>QWidget</classname> e <classname>QObject </classname>, assim como a documentação da biblioteca 'tdecore' para a classe <classname>TDEApplication</classname>. O <ulink url="developer.kde.org/documentation/library/libraryref.html">Manual de Referência da Biblioteca do KDE</ulink> também cobre uma descrição completa da invocação dos construtores da <classname>QApplication</classname> e da <classname>TDEApplication</classname>, incluindo o processamento dos argumentos da linha de comandos. </para>
<para>O que você deverá ter olhado adicionalmente até agora é a documentação de referência do Qt, especialmente a as classes <classname>QApplication</classname>, <classname>TQWidget</classname> e <classname>TQObject </classname>, assim como a documentação da biblioteca 'tdecore' para a classe <classname>TDEApplication</classname>. O <ulink url="developer.kde.org/documentation/library/libraryref.html">Manual de Referência da Biblioteca do KDE</ulink> também cobre uma descrição completa da invocação dos construtores da <classname>QApplication</classname> e da <classname>TDEApplication</classname>, incluindo o processamento dos argumentos da linha de comandos. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // permitir à vista mudar a barra de estado e o título
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Escusado será dizer que a estabilidade é um grande objectivo de desenho. Ninguém poderá evitar os erros, mas poderemos obter um mínimo se tivermos objectivos de desenho inteligentes e um uso abrangente de desenho orientado por objectos. O C++ torna a programação uma alegria se você souber como explorar as suas capacidades - a herança, o isolamento de informação e a reutilização de código já existente. </para>
<para>Ao criar um projecto do KDE ou do Qt, você terá de ter sempre uma vista que herde de QWidget, quer por herança directa, ou então porque o item da biblioteca que deseja usar herda do QWidget. Como tal, o Assistente de Aplicações já construiu uma vista que é uma instância de uma classe suaAplicacaoView, a qual já herda de QWidget. </para>
<para>Ao criar um projecto do KDE ou do Qt, você terá de ter sempre uma vista que herde de TQWidget, quer por herança directa, ou então porque o item da biblioteca que deseja usar herda do TQWidget. Como tal, o Assistente de Aplicações já construiu uma vista que é uma instância de uma classe suaAplicacaoView, a qual já herda de TQWidget. </para>
<para>Este capítulo descreve, deste modo, como usar os itens das bibliotecas para criar vistas das aplicações do KDE e do QT que sejam geradas com o &tdevelop;, e iremos depois olhar para os tipos de vistas que já são oferecidas. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>Olhando para a primeira página da documentação 'online' do Qt, você irá ver uma referência a "Widget Screenshots" (Imagens dos Elementos Gráficos), onde você poderá ver como é que o itens que o Qt contém irão ficar. Eles estão prontos a usar e podem ser combinados em conjunto para forma itens mais complexos, de modo a criar vistas de aplicações ou janelas. A seguir, iremos discutir alguns destes itens que são muito úteis para criar vistas de aplicações; tenha contudo em mente que as bibliotecas do KDE algumas vezes contêm outros itens para o mesmo fim; estes serão revistos na próxima secção. </para>
<para>Aqui está um conjunto de sugestões sobre o fim para que você irá usar um determinado componente do Qt: <orderedlist>
<listitem><para>Se a área da sua janela não for grande o suficiente para mostrar todos os seus dados, o utilizador irá precisar de se deslocar pelo documento através de barras à esquerda e em baixo na janela. Para isso, o Qt oferece a classe <classname>QScrollView</classname>, que oferece uma área-filha que poderá ser posicionável. Como foi dito, você poderá herdar o seu próprio item de <classname>QScrollView</classname> ou usar uma instância para gerir o item da vista do seu documento. </para></listitem>
<listitem><para>Para criar você próprio uma ScrollView, herde o item da vista da classe <classname>QWidget</classname> e adicione <classname>QScrollBars </classname> verticais e horizontais. (Isto é feito pelo item TDEHTMLView do KDE). </para></listitem>
<listitem><para>Para criar você próprio uma ScrollView, herde o item da vista da classe <classname>TQWidget</classname> e adicione <classname>QScrollBars </classname> verticais e horizontais. (Isto é feito pelo item TDEHTMLView do KDE). </para></listitem>
<listitem><para>Para processar texto, use a <classname>QTextEdit</classname>. Esta classe fornece um elemento gráfico de edição de texto completo que já é capaz de cortar, copiar e colar texto e é gerido por uma vista posicionável. </para></listitem>
<listitem><para>Use a <classname>QTable</classname> para mostrar dados organizados numa tabela. Dado que a <classname>QTable</classname> usa também barras de posicionamento, é uma boa solução para aplicações de cálculos de tabelas. </para></listitem>
<listitem><para>Para mostrar dois itens diferentes ou duas janelas ao mesmo tempo, use o <classname>QSplitter </classname>. Isto permite pôr lado-a-lado as vistas com divisões horizontais ou verticais. O KMail é um bom exemplo do que isto iria parecer - a área principal é separada na vertical por uma divisória e a área do lado direito é, por sua vez, dividida de novo na horizontal. </para></listitem>
@ -653,7 +653,7 @@ return a.exec();
<title>Configuração de Aceleradores de Teclado</title>
<para>Uma coisa muito profissional que você deverá sempre adicionar à sua aplicação são os aceleradores de teclado. Estes são principalmente usados pelos utilizadores experientes que gostam de trabalhar depressa com as suas aplicações e que estão dispostos a aprender atalhos. Para isso, as bibliotecas do KDE fornecem a classe <classname> TDEAction</classname>, que fornece as teclas de atalho do teclado e o acesso aos aceleradores-padrão de teclado, configurados a nível global. </para>
<para>Por omissão, as aplicações gráficas geradas pelo &tdevelop; só usam os aceleradores de teclado normais, como o F1 para aceder à ajuda 'online', o Ctrl+N para Novo Ficheiro, etc. </para>
<para>Se a sua aplicação contiver um conjunto de aceleradores, você deverá torná-los configuráveis num menu de opções; tanto poderão estar em conjunto com outras configurações da aplicação numa QWidget como usados isoladamente. A biblioteca do KDE já fornece uma classe <classname>KKeyChooser</classname> para ser usada em páginas de uma janela, enquanto que a <classname>KKeyDialog</classname> fornece uma janela de configuração de teclas pronta a usar. </para>
<para>Se a sua aplicação contiver um conjunto de aceleradores, você deverá torná-los configuráveis num menu de opções; tanto poderão estar em conjunto com outras configurações da aplicação numa TQWidget como usados isoladamente. A biblioteca do KDE já fornece uma classe <classname>KKeyChooser</classname> para ser usada em páginas de uma janela, enquanto que a <classname>KKeyDialog</classname> fornece uma janela de configuração de teclas pronta a usar. </para>
</sect1>
</chapter>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>O Botão <guibutton>O que é Isto...?</guibutton></title>
<para>O botão <guibutton>O Que É Isto...?</guibutton> fornece janelas de ajuda com a intenção de que o utilizador quer obter ajuda sobre um determinado elemento na área de trabalho ou sobre um item da barra de ferramentas. É colocado na barra de ferramentas e é activado logo que o utilizador carregue no botão. O cursor muda para uma seta com um ponto de interrogação semelhante ao que o botão tem. O utilizador então poderá carregar num item visível para obter uma janela de ajuda. Como exercício, você poderá tentar este comportamento com o botão <guibutton>O que é isto...?</guibutton> no &tdevelop;. </para>
<para>Para adicionar a ajuda 'O Que É Isto...?' a um dos seus itens gráficos, use o método estático <methodname>QWhatsThis::add(QWidget *item, const QString &amp;texto)</methodname> </para>
<para>Para adicionar a ajuda 'O Que É Isto...?' a um dos seus itens gráficos, use o método estático <methodname>QWhatsThis::add(TQWidget *item, const TQString &amp;texto)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Uma conversão rápida de <classname>QImage</classname> para <classname>QPixmap</classname>. </para>
<para>Uma conversão rápida de <classname>TQImage</classname> para <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>O modelo de imagens de baixo nível do Qt é baseado nas capacidades oferecidas pelo X11 e por outros sistemas de janelas para os quais o Qt foi implementado. Mas também as extende, implementando funcionalidades adicionais como as transformações arbitrárias por afinidade para texto e imagens. </para>
<para>A classe gráfica central para o desenho 2D com o Qt é a <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Ela poderá desenhar num <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Existem três dispositivos de pintura implementados: um é o <ulink url="kdeapi:qt/QWidget">QWidget</ulink> que representa um elemento gráfico no ecrã. A outra é o <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> que representa uma impressora e que produz o resultado em &PostScript;. A terceira é a <ulink url="kdeapi:qt/QPicture">QPicture</ulink> que guarda os comandos de desenho e que poderá gravá-los em disco e reproduzi-los depois. Uma formato possível para os comandos de desenho é a norma SVG da W3C. </para>
<para>A classe gráfica central para o desenho 2D com o Qt é a <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Ela poderá desenhar num <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Existem três dispositivos de pintura implementados: um é o <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink> que representa um elemento gráfico no ecrã. A outra é o <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink> que representa uma impressora e que produz o resultado em &PostScript;. A terceira é a <ulink url="kdeapi:qt/QPicture">QPicture</ulink> que guarda os comandos de desenho e que poderá gravá-los em disco e reproduzi-los depois. Uma formato possível para os comandos de desenho é a norma SVG da W3C. </para>
<para>Como tal, é possível reaproveitar o código de desenho que você usa para mostrar num item gráfico ou para imprimir, usando as mesmas funcionalidades suportadas. Claro que, na prática, o código é usado num contexto ligeiramente diferente. Desenhar num item gráfico é quase exclusivamente feito no método <methodname>paintEvent()</methodname> da classe de um elemento gráfico. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle) - Isto cria um pincel preto com um dos padrões predefinidos que são mostrados em baixo.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle) - Isto cria um pincel colorido com um dos seguinte padrões mostrados em baixo.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle) - Isto cria um pincel colorido com um dos seguinte padrões mostrados em baixo.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) - Isto cria um pincel colorido com o padrão personalizado que você passar como segundo parâmetro.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) - Isto cria um pincel colorido com o padrão personalizado que você passar como segundo parâmetro.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Cor</title>
<para>As cores têm um papel activo, quer a traçar as curvas, quer a preencher as formas geométricas. No Qt, as cores são representadas pela classe <ulink url="kdeapi:qt/QColor">QColor</ulink>. O Qt não suporta as funcionalidades gráficas avançadas, como os perfis de cores ICC e a correcção de cores. As cores são normalmente definidas, indicando os valores das componentes vermelha, verde e azul, dado que o modelo RGB é a forma como os pixels são compostos num monitor. </para>
<para>As cores têm um papel activo, quer a traçar as curvas, quer a preencher as formas geométricas. No Qt, as cores são representadas pela classe <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. O Qt não suporta as funcionalidades gráficas avançadas, como os perfis de cores ICC e a correcção de cores. As cores são normalmente definidas, indicando os valores das componentes vermelha, verde e azul, dado que o modelo RGB é a forma como os pixels são compostos num monitor. </para>
<para>É também possível usar o matiz, a saturação e o valor. Esta representação HSV é a que você usa na janela de cores do Gtk, p.ex. no GIMP. Aí, o matiz corresponde ao ângulo na roda de cores, enquanto a saturação corresponde à distância ao centro do círculo. O valor pode ser escolhido com uma barra em separado. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>A <ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> corresponde directamente aos objectos das imagens no X11. As imagens são objectos do lado do servidor e podem - numa placa gráfica moderna - até mesmo ser gravadas directamente na memória da placa. Isto torna <emphasis>bastante</emphasis> eficiente a transferência de imagens para o ecrã. As imagens também funcionam como um equivalente, fora do ecrã , dos elementos gráficos - a classe QPixmap é uma subclasse da QPaintDevice, por isso você poderá desenhar nela com um QPainter. As operações elementares de desenho são normalmente aceleradas pelos dispositivos gráficos modernos. Daí, um padrão de uso normal é usar as imagens para fazer duplo-'buffering'. Isto significa que, em vez de desenhar directamente num elemento gráfico, você desenha num objecto temporário de imagem e usa a função <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> para transferir a imagem para o elemento gráfico. Para os desenhos complexos, isto ajuda a evitar intermitências. </para>
<para>Em contraste, os objectos <ulink url="kdeapi:qt/QImage">QImage</ulink> residem do lado do cliente. A sua ênfase é na fornecer um acesso directo aos pixels da imagem. Isso torna-os úteis para manipular imagens e para coisas como a leitura e gravação em disco (o método load() da QPixmap recebe uma QImage como passo intermédio). Por outro lado, desenhar uma imagem num elemento gráfico é uma operação relativamente dispendiosa, dado que implica uma transferência para o servidor X, o que ainda poderá levar algum tempo, especialmente para imagens grandes e para servidores remotos. Dependendo da profundidade de cor, a conversão de uma QImage para uma QPixmap pode necessitar de ajuste de cores. </para>
<para>Em contraste, os objectos <ulink url="kdeapi:qt/TQImage">TQImage</ulink> residem do lado do cliente. A sua ênfase é na fornecer um acesso directo aos pixels da imagem. Isso torna-os úteis para manipular imagens e para coisas como a leitura e gravação em disco (o método load() da QPixmap recebe uma TQImage como passo intermédio). Por outro lado, desenhar uma imagem num elemento gráfico é uma operação relativamente dispendiosa, dado que implica uma transferência para o servidor X, o que ainda poderá levar algum tempo, especialmente para imagens grandes e para servidores remotos. Dependendo da profundidade de cor, a conversão de uma TQImage para uma QPixmap pode necessitar de ajuste de cores. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Desenhar texto</title>
<para>O texto poderá ser desenhado com uma das variantes do método QPainter::drawText(). Estas desenham uma QString quer num dado ponto, quer num dado rectângulo, usando o tipo de letra definido pelo QPainter::setFont(). Existe também um parâmetro que recebe uma combinação do tipo OU de algumas opções dos tipos enumerados <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> e <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>O texto poderá ser desenhado com uma das variantes do método QPainter::drawText(). Estas desenham uma TQString quer num dado ponto, quer num dado rectângulo, usando o tipo de letra definido pelo QPainter::setFont(). Existe também um parâmetro que recebe uma combinação do tipo OU de algumas opções dos tipos enumerados <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> e <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink> </para>
<para>A partir da versão 3.0, o Qt toma conta da disposição completa do texto, mesmo para as línguas escritas da direita para a esquerda. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void JanelaPrincipal::menuPedido()
{
QWidget *m = factory()->container("menu_contexto", this);
TQWidget *m = factory()->container("menu_contexto", this);
QPopupMenu *menu = static_cast&lt;QPopupMenu *&gt;(m);
menu->exec(QCursor::pos());
}
@ -1139,13 +1139,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Para além dos itens normais, este exemplo demonstra como é que você declara que um serviço tem determinadas propriedades. Cada definição de propriedades corresponde a um grupo <literal>[PropertyDef::name]</literal> no ficheiro de configuração. Neste grupo, o item <literal>Type</literal> define o tipo da propriedades. Os tipos possíveis são todos os que conseguem ser registados num <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1197,11 +1197,11 @@ X-KDevelop-Scope=Project
<para>Com o objecto <classname>KService</classname> acessível, você poderá simplesmente carregar a biblioteca e obter uma referência para o objecto da sua 'factory': </para>
<programlisting>KService *servico = ...
QString nomeBiblioteca = QFile::encodeName(servico->library());
TQString nomeBiblioteca = QFile::encodeName(servico->library());
KLibFactory *fabrica = KLibLoader::self()->factory(nomeBiblioteca);
if (!fabrica) {
QString nome = servico->name();
QString mensagemErro = KLibLoader::self()->lastErrorMessage();
TQString nome = servico->name();
TQString mensagemErro = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("Ocorreu um erro ao carregar o serviço %1.\n"
"O diagnóstico da libtool é:\n%2")
.arg(nome).arg(mensagemErro);
@ -1212,7 +1212,7 @@ if (!fabrica) {
<programlisting>if (fabrica->inherits("KParts::Factory")) {
KParts::Factory *fabricaComponentes = static_cast&lt;KParts::Factory*&gt;(fabrica);
QObject *objecto = fabricaComponentes->createPart(janelaMae, nomeJanela,
TQObject *objecto = fabricaComponentes->createPart(janelaMae, nomeJanela,
mae, nome, "KParts::ReadOnlyPart");
...
} else {
@ -1257,7 +1257,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *cliente = kapp->dcopClient();
cliente->attach();
if (!cliente->isApplicationRegistered("tdeio_uiserver")) {
QString erro;
TQString erro;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;erro))
cout &lt;&lt; "O início do kioserver falhou com a mensagem " &lt;&lt; erro &lt;&lt; endl;
}
@ -1276,7 +1276,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>No exemplo aqui dado, o serviço foi iniciado "por nome", i.e., o primeiro argumento do <function>TDEApplication::startServiceByName()</function> é o nome que aparece na linha <literal>Name</literal> do ficheiro 'desktop'. Uma alternativa é usar o <function>TDEApplication::startServiceByDesktopName()</function>, que recebe o nome do ficheiro 'desktop' como argumento, i.e., neste caso, seria igual a <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Todas estas chamadas recebem uma lista de URLs como segundo argumento, o qual é dado ao serviço na linha de comandos. O terceiro argumento é um ponteiro para uma <classname>QString</classname>. Se o início do serviço falhar, este argumento fica igual à mensagem de erro traduzida. </para>
<para>Todas estas chamadas recebem uma lista de URLs como segundo argumento, o qual é dado ao serviço na linha de comandos. O terceiro argumento é um ponteiro para uma <classname>TQString</classname>. Se o início do serviço falhar, este argumento fica igual à mensagem de erro traduzida. </para>
</simplesect>
@ -1386,7 +1386,7 @@ else
<para>Obviamente, até mesmo o KMimeMagic só é capaz de determinar o tipo do ficheiro para o conteúdo de um ficheiro local. Para os ficheiros remotos, existe uma outra possibilidade: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString tipo = TDEIO::NetAccess::mimetype(url);
TQString tipo = TDEIO::NetAccess::mimetype(url);
if (tipo == KMimeType::defaultMimeType())
cout &lt;&lt; "Não foi possível descobrir o tipo" &lt;&lt; endl;
else
@ -1464,7 +1464,7 @@ KRun::run(ofertas.service(), listaUrls);
<para>Obter um ícone para um dado URL. Isto procura o tipo do URL e devolve o ícone associado. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icone = KMimeType::iconForURL(url);
TQString icone = KMimeType::iconForURL(url);
</programlisting>
<para>Executar um URL. Isto procura pelo tipo do URL e inicia o programa preferido do utilizador associado a este tipo. </para>
@ -1543,7 +1543,7 @@ void ClasseXpto::resultadoMkdir(TDEIO::Job *tarefa)
<listitem><para>Muda o nome de um ficheiro. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;alvo, const KURL &amp;destino, bool sobrepor, bool mostrarProgresso)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;alvo, const KURL &amp;destino, bool sobrepor, bool mostrarProgresso)</term>
<listitem><para>Cria uma ligação simbólica. </para></listitem>
</varlistentry>
@ -1663,7 +1663,7 @@ TDEIO::NetAccess::copy(origem, destino);
<programlisting>KURL url;
url = ...;
QString ficheiroTemporario;
TQString ficheiroTemporario;
if (TDEIO::NetAccess::download(url, ficheiroTemporario) {
// carregar o ficheiro com o nome 'ficheiroTemporario'
TDEIO::NetAccess::removeTempFile(ficheiroTemporario);
@ -1699,12 +1699,12 @@ if (TDEIO::NetAccess::download(url, ficheiroTemporario) {
void ClasseXpto::transferirResultado(TDEIO::Job *tarefa)
{
QString tipoMime;
TQString tipoMime;
if (tarefa->error())
tarefa->showErrorDialog();
else {
TDEIO::TransferJob *tarefaTransferencia = (TDEIO::TransferJob*) tarefa;
QString modificado = tarefaTransferencia->queryMetaData("modified");
TQString modificado = tarefaTransferencia->queryMetaData("modified");
cout &lt;&lt; "Última modificação: " &lt;&lt; modificado &lt;&lt; endl;
}
</programlisting>
@ -1849,7 +1849,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;destino, int permissoes, bool sobrepor)</para></listitem></varlistentry>
<varlistentry><term>Cria uma ligação simbólica.</term>
<listitem><para>void symlink(const QString &amp;alvo, const KURL &amp;destino, bool sobrepor)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;alvo, const KURL &amp;destino, bool sobrepor)</para></listitem></varlistentry>
</variablelist>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText meuElemento <quote>novo texto</quote> </para>
<para>Isto assume que você está dentro de um ficheiro do &kommander; e que tem acesso ao especial @pid, o qual contém o ID do processo. De facto, é mais simples substituir o <quote>kmdr-executor-@pid</quote> por @dcopid. Contudo, você poderá usar esta sintaxe (obviamente sem os especiais) a partir da linha de comandos ou com algum programa externo para alterar a janela do &kommander;. </para>
<para>Dado que o &kommander; não tem um processador completo na sua fase 'Alpha', se você quiser usar o &DCOP; interno, que é muito mais rápido, a partir de outra janela da aplicação (o &DCOP; da consola é bastante lento), será mais complicado porque você precisa de dar bastantes informações, incluindo um protótipo da chamada. A chamada acima ficaria igual a: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>Na altura em que isto foi escrito, você deverá saber que o encadeamento de chamadas de &DCOP; dentro de estruturas da linguagem de programação (como o <application>bash</application>) significa que você precisa de usar chamadas dos métodos a partir da consola. <emphasis>Se usar o &DCOP; interno, todos os especiais do &kommander; serão executados primeiro e depois o programa será então executado.</emphasis> </para>
<para>Existe uma nova forma simplificada de usar o &DCOP; dentro do &kommander;, através de uma sintaxe de objectos. Digamos que você deseje alterar o texto num elemento chamado @CampoTexto1. Seria algo semelhante ao seguinte. </para>
<para>@CampoTexto1.changeWidgetText(Novo texto) </para>
@ -29,15 +29,15 @@
<title>O &DCOP; para Variáveis Globais</title>
<variablelist>
<varlistentry>
<term>global(QString nomeVariavel)</term>
<term>global(TQString nomeVariavel)</term>
<listitem>
<para>Devolve o valor da variável global indicada. Quando um programa é corrido dentro de uma janela do &kommander;, todas as variáveis (não-globais) definidas neste programa deixarão de existir depois de o programa terminar e, como tal, não estarão disponíveis para outros processos de programas ou numa nova instância do processo que invoca. O <quote>âmbito</quote> global significa que a variável irá existir para qualquer processo da janela até que esta seja fechada. Você poderá alterar estas variáveis em qualquer altura com uma chamada nova ao <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString nomeVariavel, QString valor)</term>
<term>setGlobal(TQString nomeVariavel, TQString valor)</term>
<listitem>
<para>Cria uma variável que é global para o processo da janela e atribui o valor a ela. Este valor poderá ser obtido com a chamada global(QString nomeVariavel) ou alterada de novo. </para>
<para>Cria uma variável que é global para o processo da janela e atribui o valor a ela. Este valor poderá ser obtido com a chamada global(TQString nomeVariavel) ou alterada de novo. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString texto)</term>
<term>changeWidgetText(TQString texto)</term>
<listitem>
<para>Este deverá ser mudado para 'setWidgetText' e este nome poderá vir a ficar obsoleto. Isto remove o texto apresentado no elemento gráfico e substitui-o pelo texto indicado. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString texto)</term>
<term>setAssociatedText(TQString texto)</term>
<listitem>
<para>Isto configura o texto por omissão do Texto do &kommander;. Isto é tipicamente igual a <quote>@widgetText</quote> para mostrar o que é introduzido no elemento gráfico. É pouco provável que tenha muita necessidade disto, mas se o fizer, será aqui. Aplica-se a todos os elementos que possam conter dados. </para>
</listitem>
@ -78,7 +78,7 @@
<title>O &DCOP; para os Elementos ListBox e ComboBox</title>
<variablelist>
<varlistentry>
<term>addListItem(QString item, int indice)</term>
<term>addListItem(TQString item, int indice)</term>
<listitem>
<para>Adiciona um item a um elemento ListBox no índice indicado. O índice da lista começa em zero. Para adicionar ao fim da lista, use -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString item)</term>
<term>addUniqueItem(TQString item)</term>
<listitem>
<para>O 'addUniqueItem' irá adicionar um item ao fim da lista, somente se for único. </para>
</listitem>
@ -126,7 +126,7 @@
<title>O &DCOP; para os Elementos CheckBox e RadioButton</title>
<variablelist>
<varlistentry>
<term>setChecked(QString nomeElemento, bool assinalado)</term>
<term>setChecked(TQString nomeElemento, bool assinalado)</term>
<listitem>
<para>Liga/desliga os elementos CheckBox ou RadioButton. </para>
</listitem>
@ -138,7 +138,7 @@
<title>O &DCOP; para os Elementos TabWidget</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString nomeElemento, int indice)</term>
<term>setCurrentTab(TQString nomeElemento, int indice)</term>
<listitem>
<para>Selecciona a página pelo índice nos TabWidgets. O índice começa em 0 (zero). </para>
</listitem>

@ -4028,5 +4028,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Activa/desactiva a barra de estado"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23881,9 +23881,9 @@ msgid ""
msgstr ""
"Indique aqui a classe de base, a partir de onde a sua nova classe irá "
"derivar. Se assinalou a opção 'Gerar uma sub-classe de TQWidget', a nova "
"classe será derivada da TQWidget. Se não for indicada nenhuma classe de "
"base, a classe nova não terá uma classe-mãe. Também poderá usar classes "
"modelo aqui (como por exemplo ClasseBase<int, int>)"
"classe será derivada da TQWidget. Se não for indicada nenhuma classe de base, "
"a classe nova não terá uma classe-mãe. Também poderá usar classes modelo "
"aqui (como por exemplo ClasseBase<int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -29575,19 +29575,19 @@ msgstr "Confiança do Certificado de SSL"
#~ msgid "Diff to Disk"
#~ msgstr "Diferenças do Disco"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Estilo Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Estilo Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Indique aqui a classe de base, a partir de onde a sua nova classe irá "
#~ "derivar. Se assinalou a opção 'Gerar uma sub-classe de QWidget', a nova "
#~ "classe será derivada da QWidget. Se não for indicada nenhuma classe de "
#~ "derivar. Se assinalou a opção 'Gerar uma sub-classe de TQWidget', a nova "
#~ "classe será derivada da TQWidget. Se não for indicada nenhuma classe de "
#~ "base, a classe nova não terá uma classe-mãe. Também poderá usar classes "
#~ "modelo aqui (como por exemplo ClasseBase<int, int>)"

@ -464,7 +464,7 @@ outros comandos como o <command>grep</command>.</synopsis>
<term><userinput>(?!PADRÃO)</userinput> (adiante negativo)</term>
<listitem><para>O 'adiante negativo' previne que uma possível combinação seja de conhecimento, se a seguinte parte da string buscada não combina com seu <emphasis>PADRÃO</emphasis>.</para>
<para>A expressão <userinput>const \w+\b(?!\s*&amp;)</userinput> combinará com <quote>const char</quote> na string <quote>const char* foo </quote> enquanto que não combinará <quote>const QString</quote> em <quote>const QString&amp; bar</quote>, pois o <quote>&amp; </quote> combina com o padrão de afirmação negativo.</para>
<para>A expressão <userinput>const \w+\b(?!\s*&amp;)</userinput> combinará com <quote>const char</quote> na string <quote>const char* foo </quote> enquanto que não combinará <quote>const TQString</quote> em <quote>const TQString&amp; bar</quote>, pois o <quote>&amp; </quote> combina com o padrão de afirmação negativo.</para>
</listitem>
</varlistentry>

@ -1721,11 +1721,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1742,15 +1742,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Carregando o KDE
<para>Antes de seu aplicativo iniciar um trabalho intensivo de computação, ou antes de ele iniciar o carregamento de plugins, &etc;, invoque o &ksplash; como se segue:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString erro;
TQString erro;
QCString NomeKSplash;
int pid = 0;
QStringList args;
@ -530,8 +530,8 @@ if (kapp-&gt;startServiceByDesktopName("ksplash", args, &amp;erro, &amp;NomeKSpl
<para>Sempre que você deseja exibir uma mensagem com ou sem um ícone, use</para>
<programlisting>arg &lt;&lt; QString("nomeIcone") &lt;&lt; QString("nomePrograma") &lt;&lt; QString("Uma descrição");
if (!(c-&gt;send(NomeKSplash, "KSplashIface", "programStarted(QString,QString,QString)", dados))
<programlisting>arg &lt;&lt; TQString("nomeIcone") &lt;&lt; TQString("nomePrograma") &lt;&lt; TQString("Uma descrição");
if (!(c-&gt;send(NomeKSplash, "KSplashIface", "programStarted(TQString,TQString,TQString)", dados))
{
// Algum processamento de erros aqui.
}
@ -596,7 +596,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Classes de plugin devem fornecer uma função <literal>static</literal> chamada <function>names</function> que retorna uma lista dos nomes pela qual ela pode ser invocada.</para></listitem>
<listitem><para>Se o plugin pode ser configurado no módulo do centro de controle, ele deve fornecer uma classe baseada em <literal>ThemeEngineConfig</literal> para a configuração.</para></listitem>
<listitem><para>Classes de plugin devem sobrescrever pelo menos as funções virtuais de <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> e <function>slotUpdateSteps</function> para torná-las úteis.</para></listitem>
<listitem><para>O construtor deve tomar a forma <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> de modo que ele possa ser usado com o <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>O construtor deve tomar a forma <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> de modo que ele possa ser usado com o <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>O último requisito pode ser mais complicado, mas, como veremos mais tarde, adicionando uma linha simples ao seus arquivos fonte, você pode normalmente ignorá-lo.</para>
</sect1>
@ -629,11 +629,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -650,7 +650,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -661,15 +661,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Vamos analisar a lista acima. A classe <classname>Theme2k</classname> satisfaz a convenção de nomes, e é filha de <classname>ThemeEngine</classname>. Ela fornece um <methodname>Theme2k::names()</methodname>, e possui um construtor que recebe os seguintes parâmetros: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> e também fornece um método <methodname>Theme2k::slotSetText()</methodname> simples. Por enquanto, não se preocupe com a classe <classname>RotWidget</classname>. Ela é um pequeno widget que fornece algum colírio para os olhos do usuário. Nosso plugin é muito simples e não exibe nenhum ícone ou mostra uma barra de progresso. Se você gostaria de exibir ícones, sobrescreva a função <function>slotSetPixmap</function>. Funções semelhantes existem para configurar o intervalo da barra de progresso (<function>slotUpdateSteps</function>) e incrementar (<function>slotUpdateProgress</function>) o passo atual. </para>
<para>Vamos analisar a lista acima. A classe <classname>Theme2k</classname> satisfaz a convenção de nomes, e é filha de <classname>ThemeEngine</classname>. Ela fornece um <methodname>Theme2k::names()</methodname>, e possui um construtor que recebe os seguintes parâmetros: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> e também fornece um método <methodname>Theme2k::slotSetText()</methodname> simples. Por enquanto, não se preocupe com a classe <classname>RotWidget</classname>. Ela é um pequeno widget que fornece algum colírio para os olhos do usuário. Nosso plugin é muito simples e não exibe nenhum ícone ou mostra uma barra de progresso. Se você gostaria de exibir ícones, sobrescreva a função <function>slotSetPixmap</function>. Funções semelhantes existem para configurar o intervalo da barra de progresso (<function>slotUpdateSteps</function>) e incrementar (<function>slotUpdateProgress</function>) o passo atual. </para>
</sect1>
<sect1 id="Implementation">
<title>Implementação do plugin</title>
@ -682,7 +682,7 @@ private:
<para>O macro <constant>K_EXPORT_COMPONENT_FACTORY</constant> é declarado em <filename>kgenericfactory.h</filename>. Vamos para o construtor! Uma vez que é um plugin muito simples, o construtor é consideravelmente simples.</para>
<example>
<title>Construtor do plugin</title>
<programlisting>Theme2k::Theme2k( QWidget *mae, const char *nome, const QStringList &amp;argumentos )
<programlisting>Theme2k::Theme2k( TQWidget *mae, const char *nome, const QStringList &amp;argumentos )
:ThemeEngine( mae, nome, argumentos )
{
readSettings();
@ -702,23 +702,23 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor TCorFundoPadrao( Qt::darkBlue );
QColor TCorTextoPadrao( Qt::white );
TQColor TCorFundoPadrao( Qt::darkBlue );
TQColor TCorTextoPadrao( Qt::white );
mTCorFundo = cfg-&gt;readColorEntry( "Cor de Fundo do Título", &amp;TCorFundoOmissao );
mTCorTexto = cfg-&gt;readColorEntry( "Cor do Texto do Título", &amp;TCorTextoOmissao );
mCorEstado = cfg-&gt;readColorEntry("Cor do Texto do Estado", &amp;mTCorFundo );
QColor Rot1Padrao( Qt::darkBlue );
QColor Rot2Padrao( Qt::cyan );
TQColor Rot1Padrao( Qt::darkBlue );
TQColor Rot2Padrao( Qt::cyan );
mRotCor1 = cfg-&gt;readColorEntry( "Cor 1 da Rotação", &amp;Rot1Padrao );
mRotCor2 = cfg-&gt;readColorEntry( "Cor 2 da Rotação", &amp;Rot2Padrao );
mRotVelocidade = cfg-&gt;readNumEntry( "Velocidade da Rotação", 30 );
mTitulo = cfg-&gt;readEntry( "Título da Janela", i18n("Espere por favor") );
mLogotipo = cfg-&gt;readEntry( "Arquivo do Logotipo", QString::null );
mLogotipo = cfg-&gt;readEntry( "Arquivo do Logotipo", TQString::null );
}
</programlisting>
</example>
@ -830,7 +830,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -854,8 +854,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -896,10 +896,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -907,14 +907,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -933,11 +933,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -948,7 +948,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -971,9 +971,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Funções DCOP</title>
<para>A Interface <abbrev>DCOP</abbrev> do &kstars; inclui as seguintes funções: <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function>: Aponta o foco da tela na direção especificada pelo argumento. O argumento pode ser o nome de qualquer objeto no céu, ou uma das seguintes palavras direcionais ou abreviaturas: zenith (ou z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function>: Aponta o foco da tela na direção especificada pelo argumento. O argumento pode ser o nome de qualquer objeto no céu, ou uma das seguintes palavras direcionais ou abreviaturas: zenith (ou z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Aponta o foco da tela nas coordenadas equatorias especificadas. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Interrompe por t segundos antes de continuar com os comandos subsequentes do script. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Para a execução do script até que o usuário pressione a tecla especificada. Até o momento, você não pode especificar combinações com teclas especiais (como <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); simplesmente use teclas simples. Você pode digitar <quote>space</quote> para indicar a barra de espaço. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Para a execução do script até que o usuário pressione a tecla especificada. Até o momento, você não pode especificar combinações com teclas especiais (como <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); simplesmente use teclas simples. Você pode digitar <quote>space</quote> para indicar a barra de espaço. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Alterna o engajamento do modo de rastreamento. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Ajusta uma opção de visão. Existem dúzias e dúzias de opções disponíveis, basicamente tudo que você pode musar na <guilabel>Janela Configurar o &kstars;</guilabel> pode ser mudado aqui também. O primeiro argumento é o nome da opção (os nomes são obtidos a partir do arquivo de configuração <filename>kstarsrc</filename>), e o segundo argumento é o valor desejado. A análise do argumento foi feita para ser robusta, logo se você acidentalmente enviar dados ruins, ele simplesmente falhará. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Ajusta uma opção de visão. Existem dúzias e dúzias de opções disponíveis, basicamente tudo que você pode musar na <guilabel>Janela Configurar o &kstars;</guilabel> pode ser mudado aqui também. O primeiro argumento é o nome da opção (os nomes são obtidos a partir do arquivo de configuração <filename>kstarsrc</filename>), e o segundo argumento é o valor desejado. A análise do argumento foi feita para ser robusta, logo se você acidentalmente enviar dados ruins, ele simplesmente falhará. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Muda a localização de observação para a cidade especificada. Se nenhuma cidade correspondente ao string do argumento for encontrada, então nada acontecerá. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Muda a localização de observação para a cidade especificada. Se nenhuma cidade correspondente ao string do argumento for encontrada, então nada acontecerá. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Para o relógio da simulação. </para></listitem>

@ -38,35 +38,35 @@
<orderedlist>
<listitem><para>Funções de Dispositivo Genéricas: Funções para estabelecer/desligar dispositivos, etc.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString dispoNome, bool usarLocal)</function> : Estabelece um serviço INDI seja local ou servidor.</para></listitem>
<listitem><para><function>shutdownINDI (QString dispoNome)</function> : Desliga o serviço INDI.</para></listitem>
<listitem><para><function>switchINDI(QString dispoNome, bool tornarOn)</function> : Conecta ou Disconecta um dispositivo INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString dispoNome, QString porta)</function> : Configura a porta de conexão do dispositivo.</para></listitem>
<listitem><para><function>setINDIAction(QString dispoNome, QString acao)</function> : Ativa uma ação INDI. A ação pode ser qualquer <emphasis>elemento</emphasis> de uma <emphasis>propriedade de opção/ação</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString dispoNome, QString acao)</function> : Pausa a execução do script atá a <emphasis>propriedade</emphasis> de ação especificada retornar com estado OK.</para></listitem>
<listitem><para><function>startINDI (TQString dispoNome, bool usarLocal)</function> : Estabelece um serviço INDI seja local ou servidor.</para></listitem>
<listitem><para><function>shutdownINDI (TQString dispoNome)</function> : Desliga o serviço INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString dispoNome, bool tornarOn)</function> : Conecta ou Disconecta um dispositivo INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString dispoNome, TQString porta)</function> : Configura a porta de conexão do dispositivo.</para></listitem>
<listitem><para><function>setINDIAction(TQString dispoNome, TQString acao)</function> : Ativa uma ação INDI. A ação pode ser qualquer <emphasis>elemento</emphasis> de uma <emphasis>propriedade de opção/ação</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString dispoNome, TQString acao)</function> : Pausa a execução do script atá a <emphasis>propriedade</emphasis> de ação especificada retornar com estado OK.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções de Telescópio: Funções para controlar o movimento e estado do telescópio.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString dispoNome, QString acao)</function> : Configura o modo do telescópio ou ação. As opções disponíveis são SLEW, TRACK, SYNC, PARK, e ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString dispoNome, double RA, double DEC)</function> : Configura as coordenadas alvo JNow do telescópio para <emphasis>RA</emphasis> e <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString dispoNome, QString objetoNome)</function> : Configura as coordenadas alvo JNow do telescópio para as coordenadas do <emphasis>objectName</emphasis>. O KStars procurará o nome do objeto no banco de dados e retornará a RA and Dec uma vez encontradas.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString dispoNome, double longitude, double latitude)</function> : Configura a localização geográfica para a longitude e latitude especificadas. A longitude é calculada E de N. Por exemplo, as coordenadas de Calgary - Canada no KStars são longitude: -114 04 58 - latitude: 51 02 58. <emphasis>Somente</emphasis> longitudes negativas precisam ser convertidas. Para converter a longitude para a notação E de N, consideremos a longitude possitiva e adicionamos 180 graus a ela. Assim, em nosso exemplo, a longitude do INDI = 114 04 08 + 180 00 00 = 294 04 08 E de N.</para></listitem>
<listitem><para><function>setINDIUTC(QString dispoNome, QString DataHoraUTC)</function> : Configura a Data e Hora UTC do telescópio no formato ISO 8601. O formato é AAAA-MM-DDTHH:MM:SS (e.g. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString dispoNome, TQString acao)</function> : Configura o modo do telescópio ou ação. As opções disponíveis são SLEW, TRACK, SYNC, PARK, e ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString dispoNome, double RA, double DEC)</function> : Configura as coordenadas alvo JNow do telescópio para <emphasis>RA</emphasis> e <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString dispoNome, TQString objetoNome)</function> : Configura as coordenadas alvo JNow do telescópio para as coordenadas do <emphasis>objectName</emphasis>. O KStars procurará o nome do objeto no banco de dados e retornará a RA and Dec uma vez encontradas.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString dispoNome, double longitude, double latitude)</function> : Configura a localização geográfica para a longitude e latitude especificadas. A longitude é calculada E de N. Por exemplo, as coordenadas de Calgary - Canada no KStars são longitude: -114 04 58 - latitude: 51 02 58. <emphasis>Somente</emphasis> longitudes negativas precisam ser convertidas. Para converter a longitude para a notação E de N, consideremos a longitude possitiva e adicionamos 180 graus a ela. Assim, em nosso exemplo, a longitude do INDI = 114 04 08 + 180 00 00 = 294 04 08 E de N.</para></listitem>
<listitem><para><function>setINDIUTC(TQString dispoNome, TQString DataHoraUTC)</function> : Configura a Data e Hora UTC do telescópio no formato ISO 8601. O formato é AAAA-MM-DDTHH:MM:SS (e.g. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções de Focador: Funções para controlar o movimento e estado do focador.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString dispoNome, QString acao)</function> : Configura a velocidade do focador. As opções disponíveis são FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, e FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString dispoNome, int espera)</function> : Configura a duração em segundos para qualquer operação subsequente de startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(QString dispoNome, int focoDir)</function> : Move o focador seja para próximo (focoDir = 0) ou para longe (focoDir = 1). A velocidade e duração desta operação é configurada pelas funções <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString dispoNome, TQString acao)</function> : Configura a velocidade do focador. As opções disponíveis são FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM, e FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString dispoNome, int espera)</function> : Configura a duração em segundos para qualquer operação subsequente de startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(TQString dispoNome, int focoDir)</function> : Move o focador seja para próximo (focoDir = 0) ou para longe (focoDir = 1). A velocidade e duração desta operação é configurada pelas funções <function>setINDIFocusSpeed()</function> e <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Funções de Câmera/CCD: Funções para controlar as propriedades e estado da câmera/CCD.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString dispoNome, int temp)</function> : Configura a temperatura alvo do chip CCD em graus celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString dispoNome, QString tipo)</function> : Configura o tipo de quadro CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString dispoNome, int espera)</function> : Inicia a exposição do CCD/Câmera pela duração especificada por <emphasis>espera</emphasis> em segundos.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString dispoNome, int temp)</function> : Configura a temperatura alvo do chip CCD em graus celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString dispoNome, TQString tipo)</function> : Configura o tipo de quadro CCD. As opções disponíveis são FRAME_LIGHT, FRAME_BIAS, FRAME_DARK, e FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString dispoNome, int espera)</function> : Inicia a exposição do CCD/Câmera pela duração especificada por <emphasis>espera</emphasis> em segundos.</para></listitem>
</itemizedlist>
</listitem>
</orderedlist>

@ -752,7 +752,7 @@ public:
<para>é um pouco diferente que dereferenciar um ponteiro NULL. Você não disse o objeto o que ele é, e agora você tenta usá-lo. A suposição aqui é que você deseja ter uma nova instância local do objeto Synth::PLAY. É claro que você deve ter desejado algo como isso (como criar o objeto em algum outro local, ou usar um objeto remoto existente). No entanto, é um atalho conveniente para criar objetos. A criação relaxada não funcionará uma vez que você atribua algo mais (como uma referência null). </para>
<para>O equivalente em termos de C++ deve ser <programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> que obviamente em C++ocasiona falhas de segmentação. Assim isto é diferente aqui. Esta criação relaxada é um truque especialmente porque não é necessário que uma implementação para sua interface exista. </para>

@ -1219,7 +1219,7 @@ struct TypeDef {
<para>Não existe necessidade de basear uma plataforma de multimídia no &Qt;. Ao decidir isso, e usando toda aquela serialização e outras funcionalidades de fluxo do &Qt;, iria conduzir facilmente a que a plataforma se tornasse apenas para o &Qt; (ou apenas para o &kde;). Quer dizer: tão logo se veja os GNOMEs começando a usar o &DCOP;, também, ou algo do gênero, provavelmente eu estarei errado. </para>
<para>Enquanto se sabe que o &DCOP; basicamente não sabe nada sobre os tipos de dados que envia, de modo que você poderia usar o &DCOP; sem usar o &Qt;, veja como é usado no uso do dia-a-dia do &kde;: as pessoas enviam tipos como o <classname>QString</classname>, o <classname>QRect</classname>, o <classname>QPixmap</classname>, o <classname>QCString</classname>, ..., de um lado para o outro. Estes usam a serialização do &Qt;. Por isso, se alguém optar por suportar o &DCOP; em um programa do GNOME, ele teria de afirmar que usava os tipos <classname>QString</classname>,... (ainda que não o faça, de fato) e emular a forma como o &Qt; faz a transmissão, ou então teria de enviar outros tipos de cadeias de caracteres, imagens e retângulos, o que deixaria de ser interoperável. </para>
<para>Enquanto se sabe que o &DCOP; basicamente não sabe nada sobre os tipos de dados que envia, de modo que você poderia usar o &DCOP; sem usar o &Qt;, veja como é usado no uso do dia-a-dia do &kde;: as pessoas enviam tipos como o <classname>TQString</classname>, o <classname>QRect</classname>, o <classname>QPixmap</classname>, o <classname>QCString</classname>, ..., de um lado para o outro. Estes usam a serialização do &Qt;. Por isso, se alguém optar por suportar o &DCOP; em um programa do GNOME, ele teria de afirmar que usava os tipos <classname>TQString</classname>,... (ainda que não o faça, de fato) e emular a forma como o &Qt; faz a transmissão, ou então teria de enviar outros tipos de cadeias de caracteres, imagens e retângulos, o que deixaria de ser interoperável. </para>
<para>Bem, seja o que for, o &arts; pretendeu sempre funcionar com ou sem o &kde;, com ou sem o &Qt;, com ou sem o X11, e talvez com ou sem o &Linux; (e não há problema nenhum com as pessoas que o transpõem para um sistema operacional proprietário conhecido). </para>

@ -1531,7 +1531,7 @@
<refpurpose>cancela um alarme já agendado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>arquivoCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>arquivoCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1573,7 +1573,7 @@
<refpurpose>dispara um alarme já agendado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>arquivoCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>arquivoCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1617,7 +1617,7 @@
<refpurpose>dispara ou cancela um alarme já agendado.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>arquivoCalendario</replaceable>, const QString&amp; <replaceable>idEvento</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>arquivoCalendario</replaceable>, const TQString&amp; <replaceable>idEvento</replaceable>)
</synopsis>
<refsect2>
@ -1667,43 +1667,43 @@
<refpurpose>agenda uma nova mensagem de alarme.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const QString&amp; <replaceable>texto</replaceable>,
const QString&amp; <replaceable>fonte</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>texto</replaceable>,
const TQString&amp; <replaceable>fonte</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
const QString&amp; <replaceable>recorrencia</replaceable>,
const TQString&amp; <replaceable>recorrencia</replaceable>,
int <replaceable>intervaloRepeticaoSimples</replaceable>,
int <replaceable>numeroRepeticaoSimples</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>, int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const QString&amp; <replaceable>texto</replaceable>,
const QString&amp; <replaceable>fonte</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>texto</replaceable>,
const TQString&amp; <replaceable>fonte</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
int <replaceable>numeroRecorrencias</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const QString&amp; <replaceable>texto</replaceable>,
const QString&amp; <replaceable>fonte</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>texto</replaceable>,
const TQString&amp; <replaceable>fonte</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
const QString&amp; <replaceable>dataHoraFim</replaceable>)
const TQString&amp; <replaceable>dataHoraFim</replaceable>)
</synopsis>
<refsect2>
@ -1740,7 +1740,7 @@
<varlistentry>
<term><parameter>fundo</parameter></term>
<listitem>
<para>Define a cor de fundo para mostrar a mensagem. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>QColor::name()</methodname>) onde o RR, GG and BB são valores de dois dígitos hexadecimais para o vermelho, verde e azul. Em alternativa, o texto poderá ser um nome da base de dados de cores do X, &eg; <quote>red</quote> ou <quote>steelblue</quote>. Configure o texto como vazio para indicar a cor de fundo padrão.</para>
<para>Define a cor de fundo para mostrar a mensagem. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>TQColor::name()</methodname>) onde o RR, GG and BB são valores de dois dígitos hexadecimais para o vermelho, verde e azul. Em alternativa, o texto poderá ser um nome da base de dados de cores do X, &eg; <quote>red</quote> ou <quote>steelblue</quote>. Configure o texto como vazio para indicar a cor de fundo padrão.</para>
</listitem>
</varlistentry>
@ -1842,21 +1842,21 @@
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
const QString&amp; <replaceable>recorrencia</replaceable>,
const TQString&amp; <replaceable>recorrencia</replaceable>,
int <replaceable>intervaloRepeticaoSimples</replaceable>,
int <replaceable>numeroRepeticoesSimples</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
@ -1864,15 +1864,15 @@
int <replaceable>numeroRecorrencias</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>URL</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>fundo</replaceable>,
const TQString&amp; <replaceable>fundo</replaceable>,
const KURL&amp; <replaceable>urlAudio</replaceable>,
int <replaceable>lembrete</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
const QString&amp; <replaceable>dataHoraFim</replaceable>)
const TQString&amp; <replaceable>dataHoraFim</replaceable>)
</synopsis>
<refsect2>
@ -1909,7 +1909,7 @@
<varlistentry>
<term><parameter>fundo</parameter></term>
<listitem>
<para>Define a cor de fundo para mostrar o arquivo. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>QColor::name()</methodname>) onde o RR, GG and BB são valores de dois dígitos hexadecimais para o vermelho, verde e azul. Em alternativa, o texto poderá ser um nome da base de dados de cores do X, &eg; <quote>red</quote> ou <quote>steelblue</quote>. Configure o texto vazio para indicar a cor de fundo padrão.</para>
<para>Define a cor de fundo para mostrar o arquivo. O texto poderá estar no formato <quote>#RRGGBB</quote> (tal como é devolvido pelo <methodname>TQColor::name()</methodname>) onde o RR, GG and BB são valores de dois dígitos hexadecimais para o vermelho, verde e azul. Em alternativa, o texto poderá ser um nome da base de dados de cores do X, &eg; <quote>red</quote> ou <quote>steelblue</quote>. Configure o texto vazio para indicar a cor de fundo padrão.</para>
</listitem>
</varlistentry>
@ -1995,29 +1995,29 @@
<refpurpose>agenda um novo alarme que executa um determinado comando.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComando</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComando</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>recorrencia</replaceable>,
const TQString&amp; <replaceable>recorrencia</replaceable>,
int <replaceable>intervaloRepeticaoSimples</replaceable>,
int <replaceable>numeroRepeticoesSimples</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComando</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComando</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
int <replaceable>numeroRecorrencias</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>linhaComando</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>linhaComando</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
const QString&amp; <replaceable>dataHoraFim</replaceable>)
const TQString&amp; <replaceable>dataHoraFim</replaceable>)
</synopsis>
<refsect2>
@ -2119,41 +2119,41 @@
<refpurpose>agenda um novo alarme que envia uma mensagem de e-mail.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>De</replaceable>,
const QString&amp; <replaceable>enderecos</replaceable>,
const QString&amp; <replaceable>assunto</replaceable>,
const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>anexos</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>De</replaceable>,
const TQString&amp; <replaceable>enderecos</replaceable>,
const TQString&amp; <replaceable>assunto</replaceable>,
const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>anexos</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
const QString&amp; <replaceable>recorrencia</replaceable>,
const TQString&amp; <replaceable>recorrencia</replaceable>,
int <replaceable>intervaloRepeticaoSimples</replaceable>,
int <replaceable>numeroRepeticoesSimples</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>De</replaceable>,
const QString&amp; <replaceable>enderecos</replaceable>,
const QString&amp; <replaceable>assunto</replaceable>,
const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>anexos</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>De</replaceable>,
const TQString&amp; <replaceable>enderecos</replaceable>,
const TQString&amp; <replaceable>assunto</replaceable>,
const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>anexos</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
int <replaceable>opcoes</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
int <replaceable>numeroRecorrencias</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>De</replaceable>,
const QString&amp; <replaceable>enderecos</replaceable>,
const QString&amp; <replaceable>assunto</replaceable>,
const QString&amp; <replaceable>mensagem</replaceable>,
const QString&amp; <replaceable>anexos</replaceable>,
const QString&amp; <replaceable>dataHora</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>De</replaceable>,
const TQString&amp; <replaceable>enderecos</replaceable>,
const TQString&amp; <replaceable>assunto</replaceable>,
const TQString&amp; <replaceable>mensagem</replaceable>,
const TQString&amp; <replaceable>anexos</replaceable>,
const TQString&amp; <replaceable>dataHora</replaceable>,
int <replaceable>cancelamentoPosterior</replaceable>,
nt <replaceable>opcoes</replaceable>,
int <replaceable>tipoRecorrencia</replaceable>,
int <replaceable>intervaloRecorrencia</replaceable>,
const QString&amp; <replaceable>horaFim</replaceable>)
const TQString&amp; <replaceable>horaFim</replaceable>)
</synopsis>
<refsect2>

@ -47,8 +47,8 @@
<refsect1>
<title>Exemplos</title>
<para>Para mostrar alguma ajuda sobre a classe <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>Para mostrar alguma ajuda sobre a classe <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -19,7 +19,7 @@
<para>dcop kmdr-executor-@pid KommanderIf changeWidgetText meuElemento <quote>novo texto</quote> </para>
<para>Isto assume que você está dentro de um arquivo do &kommander; e que tem acesso ao especial @pid, que contém o ID do processo. De fato, é mais simples substituir o <quote>kmdr-executor-@pid</quote> por @dcopid. Contudo, você poderá usar esta sintaxe (obviamente sem os especiais) a partir da linha de comando ou com algum programa externo para alterar a janela do &kommander;. </para>
<para>Uma vez que o &kommander; não tem um processador completo na sua fase 'Alpha', se você quiser usar o &DCOP; interno, que é muito mais rápido, a partir de outra janela do aplicativo (o &DCOP; do console é bastante lento), será mais complicado porque você precisa fornecer muitas informações, incluindo um protótipo da chamada. A chamada acima ficaria igual a: </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, Widget, true) </para>
<para>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, Widget, true) </para>
<para>Na época em que isto foi escrito, você deverá saber que o encadeamento de chamadas de &DCOP; dentro de estruturas da linguagem de programação (como o <application>bash</application>) significa que você precisa usar chamadas dos métodos a partir do console. <emphasis>Se usar o &DCOP; interno, todos os especiais do &kommander; serão executados primeiro e depois o programa será então executado.</emphasis> </para>
<para>Existe uma nova forma simplificada de usar o &DCOP; dentro do &kommander;, através de uma sintaxe de objetos. Digamos que você deseje alterar o texto num elemento chamado @CampoTexto1. Seria algo semelhante ao seguinte. </para>
<para>@CampoTexto1.changeWidgetText(Novo texto) </para>
@ -29,15 +29,15 @@
<title>O &DCOP; para Variáveis Globais</title>
<variablelist>
<varlistentry>
<term>global(QString nomeVariavel)</term>
<term>global(TQString nomeVariavel)</term>
<listitem>
<para>Devolve o valor da variável global indicada. Quando um programa é rodado dentro de uma janela do &kommander;, todas as variáveis (não-globais) definidas neste programa deixarão de existir depois do programa terminar e, como tal, não estarão disponíveis para outros processos de programas ou numa nova instância do processo que invoca. O <quote>âmbito</quote> global significa que a variável irá existir para qualquer processo da janela até que esta seja fechada. Você poderá alterar estas variáveis em qualquer momento com uma chamada nova ao <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString nomeVariavel, QString valor)</term>
<term>setGlobal(TQString nomeVariavel, TQString valor)</term>
<listitem>
<para>Cria uma variável que é global para o processo da janela e atribui o valor a ela. Este valor poderá ser obtido com a chamada global(QString nomeVariavel) ou alterado novamente. </para>
<para>Cria uma variável que é global para o processo da janela e atribui o valor a ela. Este valor poderá ser obtido com a chamada global(TQString nomeVariavel) ou alterado novamente. </para>
</listitem>
</varlistentry>
</variablelist>
@ -48,7 +48,7 @@
<variablelist>
<varlistentry>
<term>changeWidgetText(QString texto)</term>
<term>changeWidgetText(TQString texto)</term>
<listitem>
<para>Isto deverá ser mudado para 'setWidgetText' e este nome poderá vir a ficar obsoleto. Isto remove o texto apresentado no elemento gráfico e substitui-o pelo texto indicado. </para>
</listitem>
@ -66,7 +66,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString texto)</term>
<term>setAssociatedText(TQString texto)</term>
<listitem>
<para>Isto configura o texto padrão do Texto do &kommander;. Isto é tipicamente igual a <quote>@widgetText</quote> para mostrar o que é inserido no elemento gráfico. É pouco provável que tenha muita necessidade disto, mas se o fizer, será aqui. Aplica-se a todos os elementos que possam conter dados. </para>
</listitem>
@ -78,7 +78,7 @@
<title>O &DCOP; para os Elementos ListBox e ComboBox</title>
<variablelist>
<varlistentry>
<term>addListItem(QString item, int indice)</term>
<term>addListItem(TQString item, int indice)</term>
<listitem>
<para>Adiciona um item a um elemento ListBox no índice indicado. O índice da lista começa em zero. Para adicionar ao fim da lista, use -1. </para>
</listitem>
@ -90,7 +90,7 @@
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString item)</term>
<term>addUniqueItem(TQString item)</term>
<listitem>
<para>O 'addUniqueItem' irá adicionar um item ao fim da lista, somente se for único. </para>
</listitem>
@ -126,7 +126,7 @@
<title>O &DCOP; para os Elementos CheckBox e RadioButton</title>
<variablelist>
<varlistentry>
<term>setChecked(QString nomeElemento, bool assinalado)</term>
<term>setChecked(TQString nomeElemento, bool assinalado)</term>
<listitem>
<para>Liga/desliga os elementos CheckBox ou RadioButton. </para>
</listitem>
@ -138,7 +138,7 @@
<title>O &DCOP; para os Elementos TabWidget</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString nomeElemento, int indice)</term>
<term>setCurrentTab(TQString nomeElemento, int indice)</term>
<listitem>
<para>Seleciona a página pelo índice nos TabWidgets. O índice começa em 0 (zero). </para>
</listitem>

@ -4018,5 +4018,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Habilitar/desabilitar a barra de estado"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -30253,14 +30253,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Insira o nome da classe base a partir da qual sua nova classe será "
#~ "derivada. Se habilitar a opção 'Gerar uma classe filha QWidget', então a "
#~ "classe será derivada de QWidget. Se não for indicada uma classe base, a "
#~ "derivada. Se habilitar a opção 'Gerar uma classe filha TQWidget', então a "
#~ "classe será derivada de TQWidget. Se não for indicada uma classe base, a "
#~ "classe nova não terá uma classe-mãe. Você pode também usar classes modelo "
#~ "aqui (como ClasseBase<int, int>)"

@ -30361,15 +30361,15 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Scrieţi clasa de bază din care va fi derivată\n"
#~ "noua clasă. Dacă aţi marcat 'Generează clasă\n"
#~ "fiu QWidget', noua clasă va fi derivată\n"
#~ "din QWidget. Dacă nu este numită nici o clasă\n"
#~ "fiu TQWidget', noua clasă va fi derivată\n"
#~ "din TQWidget. Dacă nu este numită nici o clasă\n"
#~ "de bază atunci noua clasă nu va avea un părinte."
#, fuzzy

@ -460,7 +460,7 @@
<term><userinput>(?!ШАБЛОН)</userinput> (отрицающий просмотр)</term>
<listitem><para>Отрицающий просмотр проверяет текст на предмет несовпадения с <emphasis>ШАБЛОНОМ</emphasis>.</para>
<para>Выражение <userinput>const \w+\b(?!\s*&amp;)</userinput> совпадёт с <quote>const char</quote> в строке <quote>const char* foo</quote>, но не совпадёт с <quote>const QString</quote> в <quote>const QString&amp; bar</quote>, поскольку <quote>&amp;</quote> совпадает с шаблоном отрицающего просмотра.</para>
<para>Выражение <userinput>const \w+\b(?!\s*&amp;)</userinput> совпадёт с <quote>const char</quote> в строке <quote>const char* foo</quote>, но не совпадёт с <quote>const TQString</quote> в <quote>const TQString&amp; bar</quote>, поскольку <quote>&amp;</quote> совпадает с шаблоном отрицающего просмотра.</para>
</listitem>
</varlistentry>

@ -1719,11 +1719,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1740,15 +1740,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Загрузка KDE
<para>До того, как ваше приложение начнёт вычисления, загрузку подключаемых модулей и т.д., запустите &ksplash;. Образец:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Если вы хотите, чтобы сообщение связывалось с соответствующим значком или без него, используйте</para>
<programlisting>arg &lt;&lt; QString("имя_значка") &lt;&lt; QString("название_программы") &lt;&lt;
QString("какое-то описание");
<programlisting>arg &lt;&lt; TQString("имя_значка") &lt;&lt; TQString("название_программы") &lt;&lt;
TQString("какое-то описание");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Обработка ошибок.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Классы модуля должны обеспечивать <literal>статическую</literal> функцию с названием <function>names</function>, которая возвращает список названий, под которыми она может быть задействована.</para></listitem>
<listitem><para>Чтобы модуль можно было настраивать из Центра управления KDE, он должен включать класс, основанный на классе <literal>ThemeEngineConfig</literal>.</para></listitem>
<listitem><para>Классы модуля должны перекрывать хотя бы одну из следующих виртуальных функций: <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> и <function>slotUpdateSteps</function>, чтобы обеспечить возможность использования.</para></listitem>
<listitem><para>Разработчик должен создать конструктор <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal>, чтобы модуль можно было использовать из <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Разработчик должен создать конструктор <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal>, чтобы модуль можно было использовать из <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>Последнее требование может показаться сложным, но, как мы увидим позже, вы можете обычно игнорировать его, добавив одну строку к исходному коду.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Давайте проанализируем вышеприведённое. Класс <classname>Theme2k</classname>, унаследованный от <classname>ThemeEngine</classname> удовлетворяет объявлениям. Он обеспечивает метод <methodname>Theme2k::names()</methodname>, и имеет конструктор, который принимает необходимые параметры: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function>, и к тому же обеспечивает простой метод <methodname>Theme2k::slotSetText()</methodname>. На данном этапе вам не следует беспокоиться насчёт класса <classname>RotWidget</classname>. Это небольшой элемент графического интерфейса, который делает программу более наглядной для пользователя. Наш подключаемый модуль очень прост: он не показывает ни значков, ни индикатора загрузки. Если вы хотите использовать значки, перекройте функцию <function>slotSetPixmap</function>. Подобные функции есть для установки индикатора загрузки (<function>slotUpdateSteps</function>) и увеличения счётчика (<function>slotUpdateProgress</function>) текущего шага. </para>
<para>Давайте проанализируем вышеприведённое. Класс <classname>Theme2k</classname>, унаследованный от <classname>ThemeEngine</classname> удовлетворяет объявлениям. Он обеспечивает метод <methodname>Theme2k::names()</methodname>, и имеет конструктор, который принимает необходимые параметры: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function>, и к тому же обеспечивает простой метод <methodname>Theme2k::slotSetText()</methodname>. На данном этапе вам не следует беспокоиться насчёт класса <classname>RotWidget</classname>. Это небольшой элемент графического интерфейса, который делает программу более наглядной для пользователя. Наш подключаемый модуль очень прост: он не показывает ни значков, ни индикатора загрузки. Если вы хотите использовать значки, перекройте функцию <function>slotSetPixmap</function>. Подобные функции есть для установки индикатора загрузки (<function>slotUpdateSteps</function>) и увеличения счётчика (<function>slotUpdateProgress</function>) текущего шага. </para>
</sect1>
<sect1 id="Implementation">
<title>Реализация подключаемого модуля</title>
@ -686,7 +686,7 @@ private:
<para>Объявление макроса <constant>K_EXPORT_COMPONENT_FACTORY</constant> содержится в файле <filename>kgenericfactory.h</filename>. Теперь перейдём к конструктору. Так как подключаемый модуль совсем прост, конструктор тоже несложен.</para>
<example>
<title>Конструктор подключаемого модуля</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>Функции DCOP </title>
<para>Интерфейс &kstars; <abbrev>DCOP</abbrev> содержит следующие функции: <itemizedlist>
<listitem><para><function> lookTowards( const QString direction )</function>: Центрировать экран на направление, переданное в качестве аргумента. Это может быть название любого объекта на небе, или одно из следующих слов или сокращений: zenith (или z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> lookTowards( const TQString direction )</function>: Центрировать экран на направление, переданное в качестве аргумента. Это может быть название любого объекта на небе, или одно из следующих слов или сокращений: zenith (или z), north (n), northeast (ne), east (e), southeast (se), south (s), southwest(sw), west(w), northwest (nw). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dec )</function>: Центрирует экран на переданные в качестве аргумента экваториальные координаты. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Приостанавливает выполнение сценария на t секунд. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Приостанавливает выполнение сценария до тех пор, пока не будет нажата определённая клавиша. С помощью этой функции вы не можете определить комбинации клавиш (таких как <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); используйте простые клавиши. Укажите <quote>space</quote> чтобы определить пробел. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Приостанавливает выполнение сценария до тех пор, пока не будет нажата определённая клавиша. С помощью этой функции вы не можете определить комбинации клавиш (таких как <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>); используйте простые клавиши. Укажите <quote>space</quote> чтобы определить пробел. </para></listitem>
<listitem><para><function> setTracking( bool track )</function>: Включить трассировку. </para></listitem>
<listitem><para><function> changeViewOption( const QString option, const QString value )</function>: Изменить параметр вида. Доступно множество параметров; всё что можно изменить в окне <guilabel>Настроить &kstars;</guilabel> может быть также изменено с помощью этой функции. Первый аргумент - название параметра (названия совпадают с названиями в конфигурационном файле <filename>kstarsrc</filename>), второй аргумент - новое значение. Если вы случайно введёте неправильноле значение, программа завершиться с ошибкой. </para></listitem>
<listitem><para><function> changeViewOption( const TQString option, const TQString value )</function>: Изменить параметр вида. Доступно множество параметров; всё что можно изменить в окне <guilabel>Настроить &kstars;</guilabel> может быть также изменено с помощью этой функции. Первый аргумент - название параметра (названия совпадают с названиями в конфигурационном файле <filename>kstarsrc</filename>), второй аргумент - новое значение. Если вы случайно введёте неправильноле значение, программа завершиться с ошибкой. </para></listitem>
<listitem><para><function> setGeoLocation( const QString city, const QString province, const QString country )</function>: Изменить географическое местоположение на заданный город. Если такого города нет в базе данных, то ничего не произойдёт. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString city, const TQString province, const TQString country )</function>: Изменить географическое местоположение на заданный город. Если такого города нет в базе данных, то ничего не произойдёт. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Остановить "часы" симуляции. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Основные функции устройств (General). Например, функции включения и выключения устройств и так далее.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function>: установить соединение с устройством INDI в локальном или серверном режиме.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function>: выключить устройство INDI.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function>: подключиться или отключиться от устройства INDI.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function>: указать порт подключения к устройству INDI.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function>: выполнить действие на устройстве INDI. Действие может быть любым <emphasis>элементом свойства-переключателя</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function>: приостановить выполнение сценария, пока действие не возвратит успешное состояние.</para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function>: установить соединение с устройством INDI в локальном или серверном режиме.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function>: выключить устройство INDI.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function>: подключиться или отключиться от устройства INDI.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function>: указать порт подключения к устройству INDI.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function>: выполнить действие на устройстве INDI. Действие может быть любым <emphasis>элементом свойства-переключателя</emphasis></para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function>: приостановить выполнение сценария, пока действие не возвратит успешное состояние.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Функции телескопов (Telescope): функции управления движением телескопа и его состоянием.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function>: Установить действие телескопа. Возможные значения: SLEW, TRACK, SYNC, PARK и ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function>: переместить фокус наблюдения на место, заданное координатами.</para></listitem>
<listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function>Показать переместить фокус наблюдения на объект по имени <emphasis>objectName</emphasis>. &kstars; ищет имя объекта в своей базе данных и автоматически задаёт значения прямого восхождения и склонения, если они есть в базе данных.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function>Показать установить местонахождение телескопа в виде долготы и широты. Долгота отсчитывается от Гринвича (Великобритания) на восток, хотя широко используются отрицательные долготы для западного полушария, INDI требует использовать значения долготы от 0 до 360 градусов. Поэтому, если у вас отрицательная долгота, просто добавьте к ней 360 градусов и получите требуемое значение для INDI. Например, координаты Калгари (Канада) в &kstars; имеют долготу -114 04 58, широту 51 02 58. Тогда долгота, требуемая INDI, будет 360 - 114.083 = 245.917 градусов.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function>Показать установить время UTC на устройстве в формате ISO 8601, т.е. в формате ГГГГ-ММ-ДДTЧЧ:MM:СС (например 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function>: Установить действие телескопа. Возможные значения: SLEW, TRACK, SYNC, PARK и ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function>: переместить фокус наблюдения на место, заданное координатами.</para></listitem>
<listitem><para><function>setINDITargetName(TQString deviceName, TQString objectName)</function>Показать переместить фокус наблюдения на объект по имени <emphasis>objectName</emphasis>. &kstars; ищет имя объекта в своей базе данных и автоматически задаёт значения прямого восхождения и склонения, если они есть в базе данных.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function>Показать установить местонахождение телескопа в виде долготы и широты. Долгота отсчитывается от Гринвича (Великобритания) на восток, хотя широко используются отрицательные долготы для западного полушария, INDI требует использовать значения долготы от 0 до 360 градусов. Поэтому, если у вас отрицательная долгота, просто добавьте к ней 360 градусов и получите требуемое значение для INDI. Например, координаты Калгари (Канада) в &kstars; имеют долготу -114 04 58, широту 51 02 58. Тогда долгота, требуемая INDI, будет 360 - 114.083 = 245.917 градусов.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function>Показать установить время UTC на устройстве в формате ISO 8601, т.е. в формате ГГГГ-ММ-ДДTЧЧ:MM:СС (например 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Функции камеры/CCD (Camera/CCD): функции управления камерой/CCD и получения их состояния.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function>Показать установить температуру сенсоров CCD в градусах Цельсия.</para></listitem>
<listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function>Показать установить тип кадра CCD. Возможные значения: FRAME_LIGHT, FRAME_BIAS, FRAME_DARK и FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function>Показать задать экспозицию камеры/CCD в секундах.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function>Показать установить температуру сенсоров CCD в градусах Цельсия.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString deviceName, TQString type)</function>Показать установить тип кадра CCD. Возможные значения: FRAME_LIGHT, FRAME_BIAS, FRAME_DARK и FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function>Показать задать экспозицию камеры/CCD в секундах.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Функции фокусировки (Focuser): функции управления движением и получения сведений от фокусирующего механизма.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function>Показать установить скорость фокусирующего механизма. Допустимые значения FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM и FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function>Показать установить время задержки фокусировки в секундах. Задержка применяется к любой фокусирующей операции телескопа, производимой командой startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function>Показать фокусировать на короткое расстояние (focusDir = 0) или на бесконечность (focusDir = 1). Скорость и время фокусировки устанавливаются функциями <function>setINDIFocusSpeed()</function> и <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function>Показать установить скорость фокусирующего механизма. Допустимые значения FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM и FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function>Показать установить время задержки фокусировки в секундах. Задержка применяется к любой фокусирующей операции телескопа, производимой командой startINDIFocus.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function>Показать фокусировать на короткое расстояние (focusDir = 0) или на бесконечность (focusDir = 1). Скорость и время фокусировки устанавливаются функциями <function>setINDIFocusSpeed()</function> и <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Функции фильтра (Filter): функции управления светофильтрами.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function>: установить светофильтр <varname>filter_num</varname>. Пользователь может присваивать псевдонимы номерам фильтров в диалоге, открываемом командой <guimenuitem>Настроить INDI</guimenuitem> меню <guimenu>Устройства</guimenu> (например, светофильтр 1 &mdash; Красный, светофильтр 2 &mdash; Зелёный и так далее).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function>: установить светофильтр <varname>filter_num</varname>. Пользователь может присваивать псевдонимы номерам фильтров в диалоге, открываемом командой <guimenuitem>Настроить INDI</guimenuitem> меню <guimenu>Устройства</guimenu> (например, светофильтр 1 &mdash; Красный, светофильтр 2 &mdash; Зелёный и так далее).</para></listitem>
</itemizedlist>
</listitem>

@ -752,7 +752,7 @@ public:
<para>это несколько отличается от разыменования указателя на NULL. Вы вообще не указали объекту, чем он является, и пытаетесь использовать его. Вообразим здесь, что вы хотели иметь новую локальную копию объекта Arts::Synth_PLAY. Конечно вы могли хотеть что-то ещё (вроде создания объекта где-то ещё или использования существующего внешнего объекта. Так или иначе, объект будет как-то создан, но созданный подобным образом объект не будет работать до тех пор пока вы не присвоите ему какое-то значение (также как и нулевая ссылка). </para>
<para>Эквивалент в терминах С++<programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> что в C++ безусловно приводит к ошибке обращения к памяти. Итак, есть отличия. Такое создание объекта может быть ошибочным потому, что необязательно существует реализация вашего интерфейса. </para>

@ -1217,7 +1217,7 @@ struct TypeDef {
<para>Нет необходимости писать связующее ПО для мультимедиа в &Qt;, иначе оно станет &Qt;-зависимым. </para>
<para>Насколько я знаю, тип пересылаемых по &DCOP; данных не важен, поэтому &DCOP; может использоваться отдельно от &Qt;. Вот пример повседневного использования в &kde;: пользователи посылают типы <classname>QString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ... Они используют сериализацию &Qt;. Поэтому если кто-то решит включить поддержку &DCOP;, например, в GNOME, он не сможет использовать типы <classname>QString</classname> и др. и ему придётся эмулировать работу &Qt; с потоками или посылать строку, пиксельные изображения и типы rect, что, конечно, никуда не годится. </para>
<para>Насколько я знаю, тип пересылаемых по &DCOP; данных не важен, поэтому &DCOP; может использоваться отдельно от &Qt;. Вот пример повседневного использования в &kde;: пользователи посылают типы <classname>TQString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, ... Они используют сериализацию &Qt;. Поэтому если кто-то решит включить поддержку &DCOP;, например, в GNOME, он не сможет использовать типы <classname>TQString</classname> и др. и ему придётся эмулировать работу &Qt; с потоками или посылать строку, пиксельные изображения и типы rect, что, конечно, никуда не годится. </para>
<para>&arts; не привязан к &kde;, он может работать как с &Qt; и X11, так и без них, и даже без &Linux; (я знаю людей, у которых он нормально работает в распространённых коммерческих ОС). </para>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>Второй объект нашей программы - кнопка, экземпляр класса <classname>QPushButton</classname>. Из двух доступных конструкторов экземпляров этого класса мы воспользовались вторым: он принимает в виде аргумента строку текста, которая будет показана на кнопке. Затем методом <methodname>resize()</methodname> мы изменяем размер кнопки, чтобы вся строка была видна на кнопке. </para>
<para>Далее идёт метод <methodname>show()</methodname>. Но его нет в описании класса <classname>QPushButton</classname>. Этот класс наследует методы класса <classname>QButton</classname>, а тот, в свою очередь, наследует методы <classname>QWidget</classname>. Этот класс содержит огромное количество методов, в том числе <methodname>show()</methodname>. Итак, что же делалось с кнопкой: <orderedlist>
<para>Далее идёт метод <methodname>show()</methodname>. Но его нет в описании класса <classname>QPushButton</classname>. Этот класс наследует методы класса <classname>QButton</classname>, а тот, в свою очередь, наследует методы <classname>TQWidget</classname>. Этот класс содержит огромное количество методов, в том числе <methodname>show()</methodname>. Итак, что же делалось с кнопкой: <orderedlist>
<listitem><para>Создаём экземпляр класса <classname>QPushButton</classname>, используя второй конструктор для указания надписи на кнопке</para></listitem>
<listitem><para>Изменяем размер кнопки</para></listitem>
<listitem><para>Делаем основным элементом управления для переменной а, экземпляра класса <classname>QApplication</classname></para></listitem>
<listitem><para>Вызываем метод <methodname>show()</methodname>, который приводит к отображению элемента управления. Он наследуется от класса <classname>QWidget</classname></para></listitem>
<listitem><para>Вызываем метод <methodname>show()</methodname>, который приводит к отображению элемента управления. Он наследуется от класса <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>После вызова метода <methodname>exec()</methodname>, приложение становится видимым пользователю. Окно приложения содержит кнопку "Hello world!". Примечание: GUI-программы ведут себя несколько отлично от процедурных. Главное отличие состоит в том, что приложение входит в т.н. "главный цикл событий" ("main event loop"). Это означает, что программа ожидает действий со стороны пользователя, и выдаёт на них определённую реакцию. Следующий раздел разъясняет, что это означает для программиста, и как эти события обрабатываются в Qt. </para>
<note><para>Для опытных: кнопка не имеет родителя, это значит, что это элемент управления верхнего уровня (top-level) и выполняется в локальном цикле событий, которому не нужно ждать главного цикла событий. Подробно это объяснено в документации класса QWidget и The KDE Library Reference Guide</para>
<note><para>Для опытных: кнопка не имеет родителя, это значит, что это элемент управления верхнего уровня (top-level) и выполняется в локальном цикле событий, которому не нужно ждать главного цикла событий. Подробно это объяснено в документации класса TQWidget и The KDE Library Reference Guide</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Теперь оживим нашу программу добавлением обработчика событий. В общем, есть два способа взаимодействия пользователя с программой - клавиатурой и мышью. В обоих случаях графический интерфейс предоставляет механизмы регистрации новых событий от этих устройств и методы их обработки. </para>
<para>Оконная система посылает все события соответствующему приложению. <classname>QApplication</classname> пересылает их активному окну в виде <classname>QEvent</classname> и элементы управления затем решают, что при этом делать. Соответствующий элемент управления принимает событие и обрабатывает <methodname>QWidget::event (QEvent*)</methodname>, в котором определяется тип события и выдаётся соответствующая реакция; <methodname>event()</methodname> - главный обработчик событий. Он передаёт событие т.н. фильтрам событий, которые определяют, что произошло и что делать с этим событием. Если фильтра для данного типа события нет, вызываются специальные обработчики событий. Они вызывают соответствующие предопределённые методы: <itemizedlist>
<para>Оконная система посылает все события соответствующему приложению. <classname>QApplication</classname> пересылает их активному окну в виде <classname>QEvent</classname> и элементы управления затем решают, что при этом делать. Соответствующий элемент управления принимает событие и обрабатывает <methodname>TQWidget::event (QEvent*)</methodname>, в котором определяется тип события и выдаётся соответствующая реакция; <methodname>event()</methodname> - главный обработчик событий. Он передаёт событие т.н. фильтрам событий, которые определяют, что произошло и что делать с этим событием. Если фильтра для данного типа события нет, вызываются специальные обработчики событий. Они вызывают соответствующие предопределённые методы: <itemizedlist>
<listitem><para>События с клавиатуры - нажатие клавиш TAB и Shift-TAB:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Помните, что все функции событий являются виртуальными и защищёнными. Вы можете переназначить события, нужные вам, и определить свою реакцию. <classname>QWidget</classname> также содержит некоторые виртуальные методы, которые могут пригодиться в ваших программах. В любом случае, класс <classname>QWidget</classname> нужно узнать получше. </para>
<para>Помните, что все функции событий являются виртуальными и защищёнными. Вы можете переназначить события, нужные вам, и определить свою реакцию. <classname>TQWidget</classname> также содержит некоторые виртуальные методы, которые могут пригодиться в ваших программах. В любом случае, класс <classname>TQWidget</classname> нужно узнать получше. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Взаимодействие объектов через сигналы и слоты</title>
<para>Теперь переходим к основному отличию Qt: механизму сигнал/слот. Это быстрое и удобное решение реализации взаимодействия объектов, которое обычно решается посредством callback-функций в библиотеках, работающих с X-Window. Так как такое взаимодействие требует аккуратного программирования и иногда делает создание пользовательского интерфейса очень сложным (что описано в документации по Qt и объяснено в книге К.Дальхеймера [K.Dalheimer] 'Programming with Qt'), Troll Tech придумала новую систему, где объекты могут посылать сигналы, которые можно связывать с методами, объявленными как слоты. Программисту на C++ нужно знать только некоторые вещи о механизме: <itemizedlist>
<listitem><para>объявление класса, использующего сигналы/слот должно содержать макрос TQ_OBJECT в начале (без точки с запятой); и должно быть унаследовано от класса <classname>QObject</classname> </para></listitem>
<listitem><para>объявление класса, использующего сигналы/слот должно содержать макрос TQ_OBJECT в начале (без точки с запятой); и должно быть унаследовано от класса <classname>TQObject</classname> </para></listitem>
<listitem><para>сигнал может быть послан ключевым словом emit (например, emit signal (параметры...)) из любого метода класса, поддерживающего сигналы/слоты </para></listitem>
<listitem><para>все сигналы, использующиеся не наследуемыми классами, должны быть добавлены в объявление класса в разделе signals </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>компилятор метаобъектов (moc, meta-object compiler) обрабатывает заголовочные файлы, заменяя макросы на действительный код (это не обязательно знать). Вывод moc передаётся компилятору C++. </para></listitem>
</itemizedlist>
</para>
<para>Другой способ использования сигналов без наследования от класса <classname>QObject</classname> - использовать класс <classname>QSignal</classname>: дополнительные сведения и примеры использования вы можете найти в документации. Далее подразумевается, что вы используете наследование от класса <classname>QObject</classname>. </para>
<para>Другой способ использования сигналов без наследования от класса <classname>TQObject</classname> - использовать класс <classname>QSignal</classname>: дополнительные сведения и примеры использования вы можете найти в документации. Далее подразумевается, что вы используете наследование от класса <classname>TQObject</classname>. </para>
<para>В этом случае ваш класс может посылать сигналы куда угодно и создавать слоты, к которым можно привязывать любые сигналы. Используя сигналы, вам не нужно заботиться о том, кто их получает - нужно просто послать сигнал, а потом подключить любой слот, который будет выполнен при возникновении сигнала. Слоты можно использовать также как обычные методы в реализации. </para>
<para>Теперь, чтобы соединить сигнал со слотом,воспользуйтесь методом <methodname>connect()</methodname> класса <classname>QObject</classname> или, если доступно, другими специальными методами объекта для создания привязки к соответствующему сигналу. </para>
<para>Теперь, чтобы соединить сигнал со слотом,воспользуйтесь методом <methodname>connect()</methodname> класса <classname>TQObject</classname> или, если доступно, другими специальными методами объекта для создания привязки к соответствующему сигналу. </para>
<sect3 id="c1s2s4s1">
<title>Примерное использование</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Как видите, мы лишь расширили возможности кнопки с использованием метода <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname> &mdash; всё, что мы добавили. Что же это означает? Объявление метода <methodname>connect()</methodname> в классе QObject: </para>
<para><methodname>bool connect ( const QObject * sender, const char * signal, const QObject * receiver, const char * member ) </methodname></para>
<para>Это значит, что указатель на экземпляр <classname>QObject</classname> является инициатором сигнала, указанного во втором аргументе. Оставшиеся два аргумента есть объект-приёмник, который имеет слот, а затем и имя функции-слота, которая будет выполнена при получении сигнала. </para>
<para>Как видите, мы лишь расширили возможности кнопки с использованием метода <methodname>connect()</methodname>: <methodname>connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname> &mdash; всё, что мы добавили. Что же это означает? Объявление метода <methodname>connect()</methodname> в классе TQObject: </para>
<para><methodname>bool connect ( const TQObject * sender, const char * signal, const TQObject * receiver, const char * member ) </methodname></para>
<para>Это значит, что указатель на экземпляр <classname>TQObject</classname> является инициатором сигнала, указанного во втором аргументе. Оставшиеся два аргумента есть объект-приёмник, который имеет слот, а затем и имя функции-слота, которая будет выполнена при получении сигнала. </para>
<para>С помощью сигналов и слотов, объекты ваших программ могут взаимодействовать друг с другом без явной зависимости от типа объекта-приёмника. Далее в этом руководстве приводится более подробное описание работы механзима сигналов/слотов. Коме этого, о нём можно почитать в <ulink url="developer.kde.org/documentation/library/libraryref.html">The KDE Library Reference Guide</ulink> и <ulink url="doc.trolltech.com">Qt online reference</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Вы видите, что мы поменяли класс <classname>QApplication</classname> на <classname>TDEApplication</classname>. Затем мы использовали метод <methodname>setTopWidget</methodname> вместо <methodname>setMainWidget()</methodname> для указания главного элемента управления для <classname>TDEApplication</classname>. Всё! Ваше первое приложение KDE готово - осталось только указать путь к заголовочным файлам KDE и скомпоновать библиотеку tdecore ключом компоновщика -ltdecore. </para>
<para>Если вы не собираетесь создавать такие простые программы, вам понадобится более удобная среда написания ПО. В следующей главе речь пойдёт о &tdevelop;. </para>
<para>Итак, к этому времени, вы уже прошлись по страницам справочной документации Qt, в т.ч. по классам <classname>QApplication</classname>, <classname>QWidget</classname> и <classname>QObject</classname>, а также по документации библиотеки tdecore, классу <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE Library Reference handbook</ulink> содержит полное описание использования конструкторов <classname>QApplication</classname> и <classname>TDEApplication</classname>, включая также обработку ключей командной строки. </para>
<para>Итак, к этому времени, вы уже прошлись по страницам справочной документации Qt, в т.ч. по классам <classname>QApplication</classname>, <classname>TQWidget</classname> и <classname>TQObject</classname>, а также по документации библиотеки tdecore, классу <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE Library Reference handbook</ulink> содержит полное описание использования конструкторов <classname>QApplication</classname> и <classname>TDEApplication</classname>, включая также обработку ключей командной строки. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // allow the view to change the statusbar and caption
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Излишним будет говорить, что стабильность - самая главная цель. Никто не может 100% избежать ошибок ("bugs"), но разумное проектирование позволяет значительно уменьшить количество возможных недоработок. Программирование на C++, если вы знаете как использовать его лучшие стороны - наследовательность, скрытие информации (модульность) и повторное использование одного кода, безусловно принесёт вам успех. </para>
<para>При создании проекта KDE или Qt, его представление (view) всегда наследует QWidget, либо напрямую, либо через другие элементы управления библиотек. Мастер приложений также создёт код, содержащий класс yourappView, наследователь QWidget. </para>
<para>При создании проекта KDE или Qt, его представление (view) всегда наследует TQWidget, либо напрямую, либо через другие элементы управления библиотек. Мастер приложений также создёт код, содержащий класс yourappView, наследователь TQWidget. </para>
<para>В этой главе мы опишем как использовать элементы управления библиотек для создания новыхпредставлений, потом будет обзор готовых представлений, которые они уже содержат. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>На первой странице документации Qt вы можете найти ссылку на "Widget Screenshots", чтобы выбрать нужный. Они уже готовы к использованию, и их можно совмещать. Далее, мы обсудим некоторые из них, но помните, что библиотеки KDE могут содержать свои (доработанные) элементы управления, предназначенные для тех же задач. </para>
<para>Вот несколько компонентов Qt и их назначения: <orderedlist>
<listitem><para>Если в области вашего представления не хватает свободного места, пользователь должен перемещаться по документу с помощью полос прокрутки. Для этого, в Qt есть класс <classname>QScrollView</classname>. Вы можете сделать свой элемент управления наследником <classname>QScrollView</classname> или использовать его экземпляр для управления представлением. </para></listitem>
<listitem><para>Для создания ScrollView, унаследуйте виджет-представление от <classname>QWidget</classname> и и добавьте вертикальные и горизонтальные полосы прокрутки <classname>QScrollBars </classname> (так делается в TDEHTMLView). </para></listitem>
<listitem><para>Для создания ScrollView, унаследуйте виджет-представление от <classname>TQWidget</classname> и и добавьте вертикальные и горизонтальные полосы прокрутки <classname>QScrollBars </classname> (так делается в TDEHTMLView). </para></listitem>
<listitem><para>Для обработки текста, пвоспользуйтесь <classname>QTextEdit</classname>. Этот класс предоставляет законченный виджет текстового редактора, который уже поддерживает операции с буфером обмена, а также управляется полосами прокрутки scrollview. </para></listitem>
<listitem><para>Воспользуйтесь <classname>QTable</classname> для отображения данных, организованных в таблицу. <classname>QTable</classname> также управляется полосами прокрутки. </para></listitem>
<listitem><para>Для отображения двух различных виджетов или двух экземпляров одного виджета одновременно, воспользуйтесь <classname>QSplitter </classname>. Он позволяет разделить представления горизонтально или вертикально. Его использует KMail и KBabel. </para></listitem>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>Кнопка <guibutton>Что это?</guibutton></title>
<para>Подсказка <guibutton>Что это?</guibutton> должна содержать кратку справку (абзац-два) по выбраному элементу. Сама кнопка <guibutton>Что это?</guibutton> обычно располагается либо в меню, либо на панели инструментов, либо в загаловке окна. После нажатия на ней, пользователь должен нажать на нужной объекте. </para>
<para>Для добавления такой справки, воспользуйтесь статическим методом <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;text)</methodname> </para>
<para>Для добавления такой справки, воспользуйтесь статическим методом <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;text)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Быстрое преобразование <classname>QImage</classname> в <classname>QPixmap</classname>. </para>
<para>Быстрое преобразование <classname>TQImage</classname> в <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Низкоуровневая графическая модель Qt основывается на возможностях, предоставляемых X11 или другими графическими моделями, в которые портирована Qt. Но в ней также есть расширенные функции, такие как произвольные преобразования для текста и растра. </para>
<para>Центральный графический класс для двухмерного рисования с Qt называется <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Он может рисовать на <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Реализовано 3 устройства для рисования: <ulink url="kdeapi:qt/QWidget">QWidget</ulink>, представляющий элемент управления на экране, <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, представляющий виджет в виде вывода Postscript, и <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, позволяющий записывать и воспроизводить команды рисования (с диска) в формате SVG. </para>
<para>Центральный графический класс для двухмерного рисования с Qt называется <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Он может рисовать на <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Реализовано 3 устройства для рисования: <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink>, представляющий элемент управления на экране, <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, представляющий виджет в виде вывода Postscript, и <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, позволяющий записывать и воспроизводить команды рисования (с диска) в формате SVG. </para>
<para>Такое рисование используется преимущественно в методе paintEvent() класса элемента управления. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle) - чёрная кисть.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle) - Цветная кисть.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle) - Цветная кисть.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap) - Цветная кисть с заданным узором.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap) - Цветная кисть с заданным узором.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Цвет</title>
<para>В Qt цвета представлены классом <ulink url="kdeapi:qt/QColor">QColor</ulink>. Qt не поддерживает расширенную функциональность типа цветовых профилей ICC и сглаживание цветов. Цвета указываются по RGB. </para>
<para>В Qt цвета представлены классом <ulink url="kdeapi:qt/TQColor">TQColor</ulink>. Qt не поддерживает расширенную функциональность типа цветовых профилей ICC и сглаживание цветов. Цвета указываются по RGB. </para>
<para>Также возможно использовать оттенки, насыщенность и величина (HSV). Эти параметры напрямую используются в диалоге выбора цвета GIMP. Оттенок отвечает уголку на полосе цвета, насыщенность отвечает расстоянию до центра окружности. Величину можно выбрать отдельным ползунком. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> отвечает растровым объектам X11. Растры - это объекты стороны сервера и могут - на новых графических картах - даже храниться в их памяти. Поэтому работа с ними происходит <emphasis>очень</emphasis> быстро. Растры также выступают эквивалентами элементов управления - класс QPixmap является подклассом QPaintDevice, так что вы можете рисовать на нём с QPainter. Элементарные операции рисования обычно оптимизируются современными графическими картами. Поэтому, можно использовать растры для двойной буферизации ("double buffering"). Это означает рисовать не прямо на элементе управления, а на временном растре, а потом вызывать функцию <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> чтобы передать его виджету. Для сложных перерисовок, это помогает предотвратить мигание. </para>
<para>Объекты <ulink url="kdeapi:qt/QImage">QImage</ulink> располагаются на стороне клиента. Основное ударение поставлено на прямой доступ к точкам изображения. Это упрощает операции манипуляции с изображениями, загрузку и сохранение на диск (метод QPixmapload() берёт QImage как промежуточный). С другой стороны, рисование на элементе управления - дорогая операция, т.к. включает в себя передачу X-серверу. В зависимости от глубины цвета, преобразование из QImage в QPixmap может требовать dithering. </para>
<para>Объекты <ulink url="kdeapi:qt/TQImage">TQImage</ulink> располагаются на стороне клиента. Основное ударение поставлено на прямой доступ к точкам изображения. Это упрощает операции манипуляции с изображениями, загрузку и сохранение на диск (метод QPixmapload() берёт TQImage как промежуточный). С другой стороны, рисование на элементе управления - дорогая операция, т.к. включает в себя передачу X-серверу. В зависимости от глубины цвета, преобразование из TQImage в QPixmap может требовать dithering. </para>
</simplesect>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Кроме обычных записей, здесь есть объявление наличия свойств. Каждое определение свойства отвечает группе <literal>[PropertyDef::name]</literal> в файле настроек. В этой группе, <literal>Type</literal> объявляет тип свойства. Возможные типы - всё, что может храниться в <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Получив объект <classname>KService</classname>, остаётся загрузить библиотеку и получить указатель на объект factory: </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Starting kioserver failed with message " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>В пиведенном примере, служба была запущена по имени ("by name"), т.е. первым аргументом <function>TDEApplication::startServiceByName()</function> является имя, указываемое в записи <literal>Name</literal> файла .desktop. Как альтернативу, можно использовать <function>TDEApplication::startServiceByDesktopName()</function>, которому передаётся имя файла .desktop, например <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Все эти вызовы берут список URL вторым аргументом. Третий аргумент - указатель на <classname>QString</classname>. Если произойдёт ошибка, в это строку будет занесено (локализованное) сообщение об ошибке. </para>
<para>Все эти вызовы берут список URL вторым аргументом. Третий аргумент - указатель на <classname>TQString</classname>. Если произойдёт ошибка, в это строку будет занесено (локализованное) сообщение об ошибке. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>KMimeMagic поддерживает только локальные файлы. Для удалённых файлов: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Could not find out type" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Получить значок URL. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Выполненые URL. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Переименовать файл. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Создать символическую ссылку. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// load the file with the name tempFile
// загрузить файл с именем tempFile
@ -1699,12 +1699,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Last modified: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1849,7 +1849,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Создаёт символическую ссылку.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -3978,5 +3978,5 @@ msgstr ""
#~ msgid "new_stereotype"
#~ msgstr "new_stereotype"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23491,9 +23491,9 @@ msgid ""
msgstr ""
"Вставьте здесь базовый класс, от которого будет наследоваться новый. Если вы "
"выбрали «Создать класс, дочерний от TQWidget», то новый класс будет "
"унаследован от TQWidget. Если не было названо базового класса, то новый "
"класс не будет иметь родительского класса. Вы так же можете использовать "
"здесь шаблоны, как BaseClass<int, int>"
"унаследован от TQWidget. Если не было названо базового класса, то новый класс "
"не будет иметь родительского класса. Вы так же можете использовать здесь "
"шаблоны, как BaseClass<int, int>"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -29101,19 +29101,19 @@ msgstr "Доверие сертификату SSL"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Ошибка компиляции регулярного выражения."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Стиль Qt &4 (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Стиль Qt &4 (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Вставьте здесь базовый класс, от которого будет наследоваться новый. Если "
#~ "вы выбрали «Создать класс, дочерний от QWidget», то новый класс будет "
#~ "унаследован от QWidget. Если не было названо базового класса, то новый "
#~ "вы выбрали «Создать класс, дочерний от TQWidget», то новый класс будет "
#~ "унаследован от TQWidget. Если не было названо базового класса, то новый "
#~ "класс не будет иметь родительского класса. Вы так же можете использовать "
#~ "здесь шаблоны, как BaseClass<int, int>"

@ -4536,5 +4536,5 @@ msgstr ""
#~ msgstr "Ku mbuganyuma"
#, fuzzy
#~ msgid "QString"
#~ msgid "TQString"
#~ msgstr "Ikurikiranyanyuguti"

@ -31749,8 +31749,8 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""

@ -195,7 +195,7 @@ regulárnych výrazov príkazu <command>grep</command>.</synopsis>
<para>Niektoré podmienky obsahujú vzorky, ktorým majú zodpovedať, ale nájdený text sa nestane súčasťou výsledku celého výrazu.</para>
<para>Regulárne výrazy, ktoré tu popisujeme, podporujú tieto podmienky: <variablelist> <varlistentry> <term><userinput>^</userinput> (začiatok reťazca)</term> <listitem><para>Zodpovedá začiatku prehľadávaného reťazca.</para> <para>Výraz <userinput>^Peter</userinput> bude zodpovedať <quote>Peter</quote> v reťazci <quote>Peter, hey!</quote>, ale nie v <quote>Hey, Peter!</quote> </para> </listitem> </varlistentry> <varlistentry> <term><userinput>$</userinput> (koniec reťazca)</term> <listitem><para>Zodpovedá koncu prehľadávaného reťazca.</para> <para>Výraz <userinput>you\?$</userinput> nájde posledné you v reťazci <quote>You didn't do that, did you?</quote> ale žiadne v <quote>You didn't do that, right?</quote></para> </listitem> </varlistentry> <varlistentry> <term><userinput>\b</userinput> (okraj slova)</term> <listitem><para>Platí, ak je na jednej strane znak slova, ale na druhej nie.</para> <para>To sa hodí pre nájdenie koncov slov, napríklad na oboch koncoch slova musí platiť. Výraz <userinput>\bin\b</userinput> nájde samostatné <quote>in</quote> v reťazci <quote>He came in through the window</quote>, ale nie <quote>in</quote> v slove <quote>window</quote>.</para></listitem> </varlistentry> <varlistentry> <term><userinput>\B</userinput> (nie okraj slova)</term> <listitem><para>Platí, ak neplatí <quote>\b</quote>.</para> <para>To znamená, že bude napríklad zodpovedať v slovách: Výraz <userinput>\Bin\B</userinput> bude nájdený v <quote>window</quote> ale nie v <quote>integer</quote> alebo <quote>I'm in love</quote>.</para> </listitem> </varlistentry> <varlistentry> <term><userinput>(?=VZORKA)</userinput> (Pozitívny výhľad)</term> <listitem><para>Podmienka výhľadu sa pozrie na reťazec, ktorý nasleduje za možným výskytom. Pozitívny výhľad zabráni, aby sa našiel text, ktorý by nezodpovedal <emphasis>VZORKA</emphasis>, ale text, ktorý vzorke zodpovedá, sa vo výsledku neobjaví.</para> <para>Výraz <userinput>auto(?=\w)</userinput> zodpovedá <quote>auto</quote> v <quote>autobus</quote> ale nie v <quote>To auto je pokazené.</quote></para> </listitem> </varlistentry> <varlistentry> <term><userinput>(?!VZORKA)</userinput> (Negatívny výhľad)</term> <listitem><para>Negatívny výhľad zabráni nájdeniu textu v prípade, že nasledujúci text nezodpovedá <emphasis>VZORKA</emphasis></para> <para>Výraz <userinput>const \w+\b(?!\s*&amp;)</userinput> bude zodpovedať na <quote>const char</quote> v reťazci <quote>const char* foo</quote> ale nie <quote>const QString</quote> v <quote>const QString&amp; bar</quote>, pretože <quote>&amp;</quote> zodpovedá vzorke negatívneho výhľadu.</para> </listitem> </varlistentry> </variablelist> </para>
<para>Regulárne výrazy, ktoré tu popisujeme, podporujú tieto podmienky: <variablelist> <varlistentry> <term><userinput>^</userinput> (začiatok reťazca)</term> <listitem><para>Zodpovedá začiatku prehľadávaného reťazca.</para> <para>Výraz <userinput>^Peter</userinput> bude zodpovedať <quote>Peter</quote> v reťazci <quote>Peter, hey!</quote>, ale nie v <quote>Hey, Peter!</quote> </para> </listitem> </varlistentry> <varlistentry> <term><userinput>$</userinput> (koniec reťazca)</term> <listitem><para>Zodpovedá koncu prehľadávaného reťazca.</para> <para>Výraz <userinput>you\?$</userinput> nájde posledné you v reťazci <quote>You didn't do that, did you?</quote> ale žiadne v <quote>You didn't do that, right?</quote></para> </listitem> </varlistentry> <varlistentry> <term><userinput>\b</userinput> (okraj slova)</term> <listitem><para>Platí, ak je na jednej strane znak slova, ale na druhej nie.</para> <para>To sa hodí pre nájdenie koncov slov, napríklad na oboch koncoch slova musí platiť. Výraz <userinput>\bin\b</userinput> nájde samostatné <quote>in</quote> v reťazci <quote>He came in through the window</quote>, ale nie <quote>in</quote> v slove <quote>window</quote>.</para></listitem> </varlistentry> <varlistentry> <term><userinput>\B</userinput> (nie okraj slova)</term> <listitem><para>Platí, ak neplatí <quote>\b</quote>.</para> <para>To znamená, že bude napríklad zodpovedať v slovách: Výraz <userinput>\Bin\B</userinput> bude nájdený v <quote>window</quote> ale nie v <quote>integer</quote> alebo <quote>I'm in love</quote>.</para> </listitem> </varlistentry> <varlistentry> <term><userinput>(?=VZORKA)</userinput> (Pozitívny výhľad)</term> <listitem><para>Podmienka výhľadu sa pozrie na reťazec, ktorý nasleduje za možným výskytom. Pozitívny výhľad zabráni, aby sa našiel text, ktorý by nezodpovedal <emphasis>VZORKA</emphasis>, ale text, ktorý vzorke zodpovedá, sa vo výsledku neobjaví.</para> <para>Výraz <userinput>auto(?=\w)</userinput> zodpovedá <quote>auto</quote> v <quote>autobus</quote> ale nie v <quote>To auto je pokazené.</quote></para> </listitem> </varlistentry> <varlistentry> <term><userinput>(?!VZORKA)</userinput> (Negatívny výhľad)</term> <listitem><para>Negatívny výhľad zabráni nájdeniu textu v prípade, že nasledujúci text nezodpovedá <emphasis>VZORKA</emphasis></para> <para>Výraz <userinput>const \w+\b(?!\s*&amp;)</userinput> bude zodpovedať na <quote>const char</quote> v reťazci <quote>const char* foo</quote> ale nie <quote>const TQString</quote> v <quote>const TQString&amp; bar</quote>, pretože <quote>&amp;</quote> zodpovedá vzorke negatívneho výhľadu.</para> </listitem> </varlistentry> </variablelist> </para>
</sect1>

@ -3992,5 +3992,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Zapne/vypne stavový riadok"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29870,14 +29870,14 @@ msgstr "Dôveryhodný SSL certifikát"
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Zadajte triedu predka, z ktorej chcete zdediť novú\n"
#~ "triedu. Ak ste použili 'generovať potomka triedy QWidget',\n"
#~ "nová trieda bude zdedená z QWidget. Ak nie je zadaná\n"
#~ "triedu. Ak ste použili 'generovať potomka triedy TQWidget',\n"
#~ "nová trieda bude zdedená z TQWidget. Ak nie je zadaná\n"
#~ "trieda predka, nová trieda nebude mať predka."
#, fuzzy

@ -3965,5 +3965,5 @@ msgstr ""
#~ msgid "folder"
#~ msgstr "mapa"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29817,14 +29817,14 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Vnesite osnovni razred, iz katerega bo novi razred podedovan. Če ste "
#~ "izbrali »Ustvari podrazred QWidget«, bo novi razred podedovan od "
#~ "»QWidget«. V primeru, da ne imenujete osnovnega razreda, novi razred ne "
#~ "izbrali »Ustvari podrazred TQWidget«, bo novi razred podedovan od "
#~ "»TQWidget«. V primeru, da ne imenujete osnovnega razreda, novi razred ne "
#~ "bo imel predhodnika. Lahko uporabite tudi predloge razredov (npr. "
#~ "BaseClass<int, int>)"

@ -3993,5 +3993,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Укључује/искључује статусну траку"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29155,19 +29155,19 @@ msgstr "Поверење SSL сертификата"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Грешка при превођењу регуларног израза."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 стил (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 стил (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Убаците базну класу из које ће ваша нова класа бити изведена. Ако сте "
#~ "укључили „Генериши дечју класу QWidget-а“, нова класа ће бити изведена из "
#~ "QWidget-а. Ако се не наведе базна класа, нова класа неће имати родитељску "
#~ "укључили „Генериши дечју класу TQWidget-а“, нова класа ће бити изведена из "
#~ "TQWidget-а. Ако се не наведе базна класа, нова класа неће имати родитељску "
#~ "класу. Овде такође можете да користите шаблонске класе (нпр. "
#~ "BaznaKlasa<int, int>)"

@ -3994,5 +3994,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Uključuje/isključuje statusnu traku"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29176,19 +29176,19 @@ msgstr "Poverenje SSL sertifikata"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Greška pri prevođenju regularnog izraza."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 stil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 stil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Ubacite baznu klasu iz koje će vaša nova klasa biti izvedena. Ako ste "
#~ "uključili „Generiši dečju klasu QWidget-a“, nova klasa će biti izvedena "
#~ "iz QWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "uključili „Generiši dečju klasu TQWidget-a“, nova klasa će biti izvedena "
#~ "iz TQWidget-a. Ako se ne navede bazna klasa, nova klasa neće imati "
#~ "roditeljsku klasu. Ovde takođe možete da koristite šablonske klase (npr. "
#~ "BaznaKlasa<int, int>)"

@ -460,7 +460,7 @@
<term><userinput>(?!MÖNSTER)</userinput> (Negativ sökning framåt)</term>
<listitem><para>Den negativa sökningen framåt förhindrar en möjlig matchning från att bekräftas om den följande delen av söksträngen matchar sitt <emphasis>MÖNSTER</emphasis>.</para>
<para>Uttrycket <userinput>const \w+\b(?!\s*&amp;)</userinput> matchar vid <quote>const char</quote> i strängen <quote>const char* x</quote> medan den inte kan matcha <quote>const QString</quote> i <quote>const QString&amp; y</quote> eftersom <quote>&amp;</quote> matchar mönstret i den negativa sökningen framåt.</para>
<para>Uttrycket <userinput>const \w+\b(?!\s*&amp;)</userinput> matchar vid <quote>const char</quote> i strängen <quote>const char* x</quote> medan den inte kan matcha <quote>const TQString</quote> i <quote>const TQString&amp; y</quote> eftersom <quote>&amp;</quote> matchar mönstret i den negativa sökningen framåt.</para>
</listitem>
</varlistentry>

@ -1720,11 +1720,11 @@ session-4
QCStringList interfaces()
QCStringList functions()
int sessionCount()
QString currentSession()
QString newSession()
QString newSession(QString type)
QString sessionId(int position)
void activateSession(QString sessionId)
TQString currentSession()
TQString newSession()
TQString newSession(TQString type)
TQString sessionId(int position)
void activateSession(TQString sessionId)
void nextSession()
void prevSession()
void moveSessionLeft()
@ -1741,15 +1741,15 @@ QCStringList functions()
bool closeSession()
bool sendSignal(int signal)
void clearHistory()
void renameSession(QString name)
QString sessionName()
void renameSession(TQString name)
TQString sessionName()
int sessionPID()
QString schema()
void setSchema(QString schema)
QString encoding()
void setEncoding(QString encoding)
QString keytab()
void setKeytab(QString keyboard)
TQString schema()
void setSchema(TQString schema)
TQString encoding()
void setEncoding(TQString encoding)
TQString keytab()
void setKeytab(TQString keyboard)
QSize size()
void setSize(QSize size)
</screen>

@ -501,7 +501,7 @@ Welcome Text = Laddar KDE
<para>Innan ditt program börjar sitt beräkningsintensiva arbete, eller innan det börjar ladda insticksprogram, etc. starta &ksplash; enligt följande:</para>
<programlisting>DCOPClient *c = kapp-&gt;dcopClient();
QString error;
TQString error;
QCString KSplashName;
int pid = 0;
QStringList args;
@ -532,10 +532,10 @@ data))
<para>Så fort du vill visa ett meddelande med eller utan ikon, använd</para>
<programlisting>arg &lt;&lt; QString("ikonnamn") &lt;&lt; QString("programnamn") &lt;&lt;
QString("Beskrivning");
<programlisting>arg &lt;&lt; TQString("ikonnamn") &lt;&lt; TQString("programnamn") &lt;&lt;
TQString("Beskrivning");
if (!(c-&gt;send(KSplashName, "KSplashIface",
"programStarted(QString,QString,QString)", data))
"programStarted(TQString,TQString,TQString)", data))
{
// Någon felhantering här.
}
@ -600,7 +600,7 @@ X-KSplash-ObjectName=Theme2k
<listitem><para>Insticksmodulklasser måste tillhandahålla en <literal>statisk</literal> funktion som heter <function>names</function>, som returnerar en lista med namn som de kan anropas med.</para></listitem>
<listitem><para>Om insticksmodulen kan anpassas i inställningscentralens modul, ska den tillhandahålla en klass baserad på <literal>ThemeEngineConfig</literal> för inställningarna.</para></listitem>
<listitem><para>Insticksmodulklasser måste måste överskrida minst en av de virtuella funktionerna <function>slotSetText</function>, <function>slotSetPixmap</function>, <function>slotUpdateProgress</function> eller <function>slotUpdateSteps</function> för att vara användbara.</para></listitem>
<listitem><para>Konstruktorn måste vara på formen <literal>ThemeEngine( QWidget *parent, const char *name, const QStringList &amp;args )</literal> så att den kan användas med <classname>KGenericFactory</classname>.</para></listitem>
<listitem><para>Konstruktorn måste vara på formen <literal>ThemeEngine( TQWidget *parent, const char *name, const QStringList &amp;args )</literal> så att den kan användas med <classname>KGenericFactory</classname>.</para></listitem>
</orderedlist>
<para>Det sista kravet kan verka komplicerat, men som vi senare kommer att se, kan du ofta ignorera det genom att lägga till en enda rad i dina källkodsfiler.</para>
</sect1>
@ -633,11 +633,11 @@ class Theme2k: public ThemeEngine
{
TQ_OBJECT
public:
Theme2k( QWidget *, const char *, const QStringList&amp; );
Theme2k( TQWidget *, const char *, const QStringList&amp; );
inline const QString name()
inline const TQString name()
{
return( QString("KSplash2k") );
return( TQString("KSplash2k") );
}
inline const KDialogBase *config( TDEConfig *kc )
{
@ -654,7 +654,7 @@ public:
};
public slots:
inline void slotSetText( const QString&amp; s )
inline void slotSetText( const TQString&amp; s )
{
if( mText &amp;&amp; mText-&gt;text() != s ) mText-&gt;setText( s );
};
@ -665,15 +665,15 @@ private:
QLabel *mText;
RotWidget *mRotator;
QColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
TQColor mTBgColor, mTFgColor, mRotColor1, mRotColor2, mStatusColor;
int mRotSpeed;
QString mWndTitle, mLogoFile;
TQString mWndTitle, mLogoFile;
};
#endif
</programlisting>
</example>
<para>Låt oss analysera listningen ovan. Klassen <classname>Theme2k</classname> följer namngivningskonventionen, och ärver från <classname>ThemeEngine</classname>. Den tillhandahåller metoden <methodname>Theme2k::names()</methodname>, och har en konstruktor som använder parametrar som krävs: <function>Theme2k( QWidget *, const char *, const QStringList&amp; );</function> och tillhandahåller också en enkel metod vid namn <methodname>Theme2k::slotSetText()</methodname>. Bekymra dig för närvarande inte om klassen <classname>RotWidget</classname>. Det är en liten grafisk komponentklass som tillhandahåller lite ögongodis åt användaren. Vår insticksmodul är mycket enkel, och visar inte några ikoner eller en förloppsrad. Om du vill visa ikoner, överskrid funktionen <function>slotSetPixmap</function>. Liknande funktioner finns för att ställa in förloppsradens hastighet (<function>slotUpdateSteps</function>) och öka nuvarande steg (<function>slotUpdateProgress</function>). </para>
<para>Låt oss analysera listningen ovan. Klassen <classname>Theme2k</classname> följer namngivningskonventionen, och ärver från <classname>ThemeEngine</classname>. Den tillhandahåller metoden <methodname>Theme2k::names()</methodname>, och har en konstruktor som använder parametrar som krävs: <function>Theme2k( TQWidget *, const char *, const QStringList&amp; );</function> och tillhandahåller också en enkel metod vid namn <methodname>Theme2k::slotSetText()</methodname>. Bekymra dig för närvarande inte om klassen <classname>RotWidget</classname>. Det är en liten grafisk komponentklass som tillhandahåller lite ögongodis åt användaren. Vår insticksmodul är mycket enkel, och visar inte några ikoner eller en förloppsrad. Om du vill visa ikoner, överskrid funktionen <function>slotSetPixmap</function>. Liknande funktioner finns för att ställa in förloppsradens hastighet (<function>slotUpdateSteps</function>) och öka nuvarande steg (<function>slotUpdateProgress</function>). </para>
</sect1>
<sect1 id="Implementation">
<title>Implementering av insticksmodulen</title>
@ -686,7 +686,7 @@ private:
<para>Makrot <constant>K_EXPORT_COMPONENT_FACTORY</constant> deklareras i <filename>kgenericfactory.h</filename>. Låt oss fortsätta till konstruktorn! Eftersom det här är en mycket enkel insticksmodul, är konstruktorn ganska rättfram.</para>
<example>
<title>Skapa insticksmodulen</title>
<programlisting>Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
<programlisting>Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -707,10 +707,10 @@ private:
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -718,14 +718,14 @@ private:
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</example>
@ -837,7 +837,7 @@ K_EXPORT_COMPONENT_FACTORY( ksplash2k, KGenericFactory&lt;Theme2k&gt; );
Cfg2k::Cfg2k( TDEConfig * )
{}
Theme2k::Theme2k( QWidget *parent, const char *name, const QStringList &amp;args
Theme2k::Theme2k( TQWidget *parent, const char *name, const QStringList &amp;args
)
:ThemeEngine( parent, name, args )
{
@ -861,8 +861,8 @@ void Theme2k::initUi()
QLabel *logo = new QLabel( vbox );
logo-&gt;setPalette( Qt::white );
QString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?QString("/Logo.png"):mLogoFile) ) );
TQString px( locate( "appdata", mTheme-&gt;themeDir() +
(mLogoFile.isNull()?TQString("/Logo.png"):mLogoFile) ) );
if (px.isNull())
px = locate("appdata","Themes/Default/splash_top.png");
if( !px.isNull() )
@ -903,10 +903,10 @@ void Theme2k::readSettings()
if( !cfg )
return;
cfg-&gt;setGroup( QString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
cfg-&gt;setGroup( TQString("KSplash Theme: %1").arg(mTheme-&gt;theme()) );
QColor DefaultTBgColor( Qt::darkBlue );
QColor DefaultTFgColor( Qt::white );
TQColor DefaultTBgColor( Qt::darkBlue );
TQColor DefaultTFgColor( Qt::white );
mTBgColor = cfg-&gt;readColorEntry( "Title Background Color",
&amp;DefaultTBgColor );
@ -914,14 +914,14 @@ void Theme2k::readSettings()
&amp;DefaultTFgColor );
mStatusColor = cfg-&gt;readColorEntry("Status Text Color", &amp;mTBgColor );
QColor DefaultRot1( Qt::darkBlue );
QColor DefaultRot2( Qt::cyan );
TQColor DefaultRot1( Qt::darkBlue );
TQColor DefaultRot2( Qt::cyan );
mRotColor1 = cfg-&gt;readColorEntry( "Rotator Color 1", &amp;DefaultRot1 );
mRotColor2 = cfg-&gt;readColorEntry( "Rotator Color 2", &amp;DefaultRot2 );
mRotSpeed = cfg-&gt;readNumEntry( "Rotator Speed", 30 );
mWndTitle = cfg-&gt;readEntry( "Window Title", i18n("Please wait...") );
mLogoFile = cfg-&gt;readEntry( "Logo File", QString::null );
mLogoFile = cfg-&gt;readEntry( "Logo File", TQString::null );
}
</programlisting>
</sect1>
@ -940,11 +940,11 @@ void Theme2k::readSettings()
/**
* @short Display a rotating-gradient widget.
*/
class RotWidget: public QWidget
class RotWidget: public TQWidget
{
TQ_OBJECT
public:
RotWidget( QWidget *, const QColor&amp;, const QColor&amp;, int );
RotWidget( TQWidget *, const TQColor&amp;, const TQColor&amp;, int );
~RotWidget();
private slots:
@ -955,7 +955,7 @@ protected:
void paintEvent( QPaintEvent * );
void resizeEvent( QResizeEvent * );
QColor m_color1, m_color2;
TQColor m_color1, m_color2;
int m_step, m_speed;
QTimer *m_stepTimer;
@ -978,9 +978,9 @@ protected:
#include "rotwidget.h"
#include "rotwidget.moc"
RotWidget::RotWidget( QWidget *parent, const QColor&amp; c1, const QColor&amp;
RotWidget::RotWidget( TQWidget *parent, const TQColor&amp; c1, const TQColor&amp;
c2, int sp )
:QWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
:TQWidget(parent), m_color1(c1), m_color2(c2), m_step(0), m_speed(sp)
{
if( (m_speed &lt;= 0) || (m_speed &gt; 20) )
m_speed = 1;

@ -6,7 +6,7 @@
<sect1 id="dcop-interface">
<title>DCOP-funktioner</title>
<para>&kstars; <abbrev>DCOP</abbrev>-gränssnitt omfattar följande funktioner: <itemizedlist>
<listitem><para><function> lookTowards( const QString riktning )</function>: Peka skärmens fokus i en riktning som anges av argumentet. Det här kan vara namnet på vilket objekt som helst på himlen, eller något av följande riktningsord eller förkortningar: zenith (eller z, för zenit), north (n, för norr), northeast (ne, för nordöst), east (e, för öst), southeast (se, för sydöst), south (s, för söder), southwest (sw, för sydväst), west (w, för väster), northwest (nw, för nordväst). </para></listitem>
<listitem><para><function> lookTowards( const TQString riktning )</function>: Peka skärmens fokus i en riktning som anges av argumentet. Det här kan vara namnet på vilket objekt som helst på himlen, eller något av följande riktningsord eller förkortningar: zenith (eller z, för zenit), north (n, för norr), northeast (ne, för nordöst), east (e, för öst), southeast (se, för sydöst), south (s, för söder), southwest (sw, för sydväst), west (w, för väster), northwest (nw, för nordväst). </para></listitem>
<listitem><para><function> setRaDec( double ra, double dek )</function>: Peka skärmens fokus på de angivna ekvatoriella koordinaterna. </para></listitem>
@ -22,13 +22,13 @@
<listitem><para><function> waitFor( double t )</function>: Gör paus under t sekunder innan följande skriptkommandon behandlas. </para></listitem>
<listitem><para><function> waitForKey( const QString k )</function>: Stanna körning av skriptet till användaren trycker på den angivna tangenten. För närvarande kan du inte ange tangentkombinationer (som <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>). Använd bara enkla tangenter. Du kan skriva <quote>space</quote> för att ange mellanslag. </para></listitem>
<listitem><para><function> waitForKey( const TQString k )</function>: Stanna körning av skriptet till användaren trycker på den angivna tangenten. För närvarande kan du inte ange tangentkombinationer (som <keycombo action="simul">&Ctrl;<keycap>C</keycap></keycombo>). Använd bara enkla tangenter. Du kan skriva <quote>space</quote> för att ange mellanslag. </para></listitem>
<listitem><para><function> setTracking( bool följ )</function>: Välj om följningsläge är aktivt eller inte. </para></listitem>
<listitem><para><function> changeViewOption( const QString alternativ, const QString värde )</function>: Ändra ett visningsalternativ. Det finns många dussin alternativ tillgängliga. I stort sett allting som du kan ändra i fönstret <guilabel>Anpassa &kstars;</guilabel> kan också ändras här. Det första argumentet är alternativets namn (namnen kommer från inställningsfilen <filename>kstarsrc</filename>), och det andra argumentet är önskat värde. Argumenttolken är konstruerad för att vara robust, så om du av misstag skickar in felaktig data bör den misslyckas utan allvarliga konsekvenser. </para></listitem>
<listitem><para><function> changeViewOption( const TQString alternativ, const TQString värde )</function>: Ändra ett visningsalternativ. Det finns många dussin alternativ tillgängliga. I stort sett allting som du kan ändra i fönstret <guilabel>Anpassa &kstars;</guilabel> kan också ändras här. Det första argumentet är alternativets namn (namnen kommer från inställningsfilen <filename>kstarsrc</filename>), och det andra argumentet är önskat värde. Argumenttolken är konstruerad för att vara robust, så om du av misstag skickar in felaktig data bör den misslyckas utan allvarliga konsekvenser. </para></listitem>
<listitem><para><function> setGeoLocation( const QString stad, const QString område, const QString land )</function>: Ändra observationsplats till den angivna staden. Om ingen stad passar ihop med argumentsträngarna, händer ingenting. </para></listitem>
<listitem><para><function> setGeoLocation( const TQString stad, const TQString område, const TQString land )</function>: Ändra observationsplats till den angivna staden. Om ingen stad passar ihop med argumentsträngarna, händer ingenting. </para></listitem>
<listitem><para><function> stop()</function> [clock]: Stanna simulatorns klocka. </para></listitem>

@ -38,40 +38,40 @@
<orderedlist>
<listitem><para>Generella enhetsfunktioner: Funktioner för att upprätta eller stänga av enheter, etc.</para>
<itemizedlist>
<listitem><para><function>startINDI (QString deviceName, bool useLocal)</function>: Upprätta en INDI-enhet antingen i lokalläge eller serverläge.</para></listitem>
<listitem><para><function>shutdownINDI (QString deviceName)</function>: Stäng av en INDI-enhet.</para></listitem>
<listitem><para><function>switchINDI(QString deviceName, bool turnOn)</function>: Koppla upp eller koppla ner en INDI-enhet.</para></listitem>
<listitem><para><function>setINDIPort(QString deviceName, QString port)</function>: Ställ in INDI-enhetens anslutningsport.</para></listitem>
<listitem><para><function>setINDIAction(QString deviceName, QString action)</function>: Aktivera en INDI-åtgärd. Åtgärden kan vara vilket <emphasis>element</emphasis> som helst i en <emphasis>omställningsegenskap</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(QString deviceName, QString action)</function>: Gör paus i körning av skriptet till angiven <emphasis>åtgärdsegenskap</emphasis> returnerar med status Ok.</para></listitem>
<listitem><para><function>startINDI (TQString deviceName, bool useLocal)</function>: Upprätta en INDI-enhet antingen i lokalläge eller serverläge.</para></listitem>
<listitem><para><function>shutdownINDI (TQString deviceName)</function>: Stäng av en INDI-enhet.</para></listitem>
<listitem><para><function>switchINDI(TQString deviceName, bool turnOn)</function>: Koppla upp eller koppla ner en INDI-enhet.</para></listitem>
<listitem><para><function>setINDIPort(TQString deviceName, TQString port)</function>: Ställ in INDI-enhetens anslutningsport.</para></listitem>
<listitem><para><function>setINDIAction(TQString deviceName, TQString action)</function>: Aktivera en INDI-åtgärd. Åtgärden kan vara vilket <emphasis>element</emphasis> som helst i en <emphasis>omställningsegenskap</emphasis>.</para></listitem>
<listitem><para><function>waitForINDIAction(TQString deviceName, TQString action)</function>: Gör paus i körning av skriptet till angiven <emphasis>åtgärdsegenskap</emphasis> returnerar med status Ok.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Teleskopfunktioner: Funktioner för att styra teleskoprörelser och status.</para>
<itemizedlist>
<listitem><para><function>setINDIScopeAction(QString deviceName, QString action)</function>: Ställ in teleskopets läge eller åtgärd. Tillgängliga alternativ är SLEW, TRACK, SYNC, PARK och ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(QString deviceName, double RA, double DEC)</function>: Ställ in teleskopets JNow-målkoordinater till <emphasis>RA</emphasis> och <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(QString deviceName, QString objectName)</function>: Ställ in teleskopets JNow-målkoordinater till koordinaterna för <emphasis>objectName</emphasis>. Kstars slår upp objektnamnet i sin databas och hämtar RA och DEC när de har hittats.</para></listitem>
<listitem><para><function>setINDIGeoLocation(QString deviceName, double longitude, double latitude)</function>: Ställ in teleskopets geografiska plats till longitud och latitud som anges. Longituden mäts österut från Greenwich, i Storbritannien. Även om det är vanligt att använda negativa longituder för västra halvklotet, kräver dock INDI logitudvärden mellan 0 och 360 grader. Om du har en negativ longitud, addera helt enkelt 360 grader för att få värdet som INDI förväntar sig. Till exempel har Calgary i Kanada följande koordinater i &kstars;: Longitud -114 04 58 och latitud 51 02 58. Alltså skulle INDI behöva longituden 360 - 114,083 = 245,917 grader.</para></listitem>
<listitem><para><function>setINDIUTC(QString ddeviceName, QString UTCDateTime)</function>: Ställ in teleskopets UTC-tid med ISO 8601-format. Formatet är ÅÅÅÅ/MM/DDTTT:MM:SS.(t.ex. 2004-07-12T22:05:32).</para></listitem>
<listitem><para><function>setINDIScopeAction(TQString deviceName, TQString action)</function>: Ställ in teleskopets läge eller åtgärd. Tillgängliga alternativ är SLEW, TRACK, SYNC, PARK och ABORT.</para></listitem>
<listitem><para><function>setINDITargetCoord(TQString deviceName, double RA, double DEC)</function>: Ställ in teleskopets JNow-målkoordinater till <emphasis>RA</emphasis> och <emphasis>DEC</emphasis>.</para></listitem>
<listitem><para><function>setINDITargetName(TQString deviceName, TQString objectName)</function>: Ställ in teleskopets JNow-målkoordinater till koordinaterna för <emphasis>objectName</emphasis>. Kstars slår upp objektnamnet i sin databas och hämtar RA och DEC när de har hittats.</para></listitem>
<listitem><para><function>setINDIGeoLocation(TQString deviceName, double longitude, double latitude)</function>: Ställ in teleskopets geografiska plats till longitud och latitud som anges. Longituden mäts österut från Greenwich, i Storbritannien. Även om det är vanligt att använda negativa longituder för västra halvklotet, kräver dock INDI logitudvärden mellan 0 och 360 grader. Om du har en negativ longitud, addera helt enkelt 360 grader för att få värdet som INDI förväntar sig. Till exempel har Calgary i Kanada följande koordinater i &kstars;: Longitud -114 04 58 och latitud 51 02 58. Alltså skulle INDI behöva longituden 360 - 114,083 = 245,917 grader.</para></listitem>
<listitem><para><function>setINDIUTC(TQString ddeviceName, TQString UTCDateTime)</function>: Ställ in teleskopets UTC-tid med ISO 8601-format. Formatet är ÅÅÅÅ/MM/DDTTT:MM:SS.(t.ex. 2004-07-12T22:05:32).</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Kamera/CCD-funktioner: Funktioner för att styra kamera/CCD-egenskaper och status.</para>
<itemizedlist>
<listitem><para><function>setINDICCDTemp(QString deviceName, int temp)</function>: Ställ in CCD-kretsens måltemperatur i grader Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(QString deviceName, QString type)</function>: Ställ in CCD-ramtyp. Tillgängliga alternativ är FRAME_LIGHT, FRAME_BIAS, FRAME_DARK och FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(QString deviceName, int timeout)</function>: Starta exponering med CCD eller kamera med längden som anges av <emphasis>timeout</emphasis> i sekunder.</para></listitem>
<listitem><para><function>setINDICCDTemp(TQString deviceName, int temp)</function>: Ställ in CCD-kretsens måltemperatur i grader Celsius.</para></listitem>
<listitem><para><function>setINDIFrameType(TQString deviceName, TQString type)</function>: Ställ in CCD-ramtyp. Tillgängliga alternativ är FRAME_LIGHT, FRAME_BIAS, FRAME_DARK och FRAME_FLAT.</para></listitem>
<listitem><para><function>startINDIExposure(TQString deviceName, int timeout)</function>: Starta exponering med CCD eller kamera med längden som anges av <emphasis>timeout</emphasis> i sekunder.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Fokuseringsfunktioner: Funktioner för att styra fokuseringsenhetens rörelse och status.</para>
<itemizedlist>
<listitem><para><function>setINDIFocusSpeed(QString deviceName, QString action)</function>: Ange fokuseringsenhetens hastighet. Tillgängliga alternativ är FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM och FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(QString deviceName, int timeout)</function>: Ställ in tidsgränsen i sekunder för alla följande startINDIFocus-åtgärder.</para></listitem>
<listitem><para><function>startINDIFocus(QString deviceName, int focusDir)</function>: Flytta antingen fokuseringsenheten inåt (focusDir = 0) eller utåt (focusDir = 1). Åtgärdens hastighet och varaktighet anges av funktionerna <function>setINDIFocusSpeed()</function> och <function>setINDIFocusTimeout()</function>.</para></listitem>
<listitem><para><function>setINDIFocusSpeed(TQString deviceName, TQString action)</function>: Ange fokuseringsenhetens hastighet. Tillgängliga alternativ är FOCUS_HALT, FOCUS_SLOW, FOCUS_MEDIUM och FOCUS_FAST.</para></listitem>
<listitem><para><function>setINDIFocusTimeout(TQString deviceName, int timeout)</function>: Ställ in tidsgränsen i sekunder för alla följande startINDIFocus-åtgärder.</para></listitem>
<listitem><para><function>startINDIFocus(TQString deviceName, int focusDir)</function>: Flytta antingen fokuseringsenheten inåt (focusDir = 0) eller utåt (focusDir = 1). Åtgärdens hastighet och varaktighet anges av funktionerna <function>setINDIFocusSpeed()</function> och <function>setINDIFocusTimeout()</function>.</para></listitem>
</itemizedlist>
</listitem>
<listitem><para>Filterfunktioner: Funktioner för att styra filterpositioner.</para>
<itemizedlist>
<listitem><para><function>setINDIFilterNum(QString deviceName, int filter_num)</function>: Ändra filterposition till <varname>filter_num</varname>. Användaren kan tilldela alias för filternummer i dialogrutan <guimenuitem>Anpassa INDI</guimenuitem> under menyn <guimenu>Enheter</guimenu> (t.ex. Filter 1 = Röd, Filter 2 = Grön, etc.).</para></listitem>
<listitem><para><function>setINDIFilterNum(TQString deviceName, int filter_num)</function>: Ändra filterposition till <varname>filter_num</varname>. Användaren kan tilldela alias för filternummer i dialogrutan <guimenuitem>Anpassa INDI</guimenuitem> under menyn <guimenu>Enheter</guimenu> (t.ex. Filter 1 = Röd, Filter 2 = Grön, etc.).</para></listitem>
</itemizedlist>
</listitem>

@ -213,16 +213,16 @@
<para>Du kan få en lista med tillgängliga &DCOP;-gränssnitt, för att använda rätt väljare, som visas i exemplet: <screen width="60"><prompt>$</prompt> <command>dcop `dcopstart ksnapshot` interface</command><computeroutput>
QCStringList interfaces()
QCStringList functions()
QString url()
TQString url()
void slotGrab()
void slotPrint()
void slotSave()
bool save(QString filename)
bool save(TQString filename)
void slotSaveAs()
void slotCopy()
void setTime(int newTime)
int timeout()
void setURL(QString newURL)
void setURL(TQString newURL)
void setGrabMode(int grab)
int grabMode()
void slotMovePointer(int x,int y)

@ -752,7 +752,7 @@ public:
<para>är något annorlunda än att följa en NULL-pekare. Du talade inte alls om för objektet vad det är, och nu försöker du använda det. Gissningen här är att du vill ha en ny lokal instans av ett Arts::Synth_PLAY-objekt. Du kan förstås ha velat göra något annat (som att skapa objektet någon annanstans, eller använda ett befintligt fjärrobjekt). Det är i alla fall en bekväm genväg för att skapa objekt. Att skapa ett objekt när det först används fungerar inte när du väl har tilldelat det något annat (som en null-referens). </para>
<para>Den motsvarande C++ terminologin skulle vara <programlisting>
QWidget* w;
TQWidget* w;
w-&gt;show();
</programlisting> som naturligtvis helt enkelt ger ett segmenteringsfel i C++. Så detta är annorlunda här. Det här sättet att skapa objekt är knepigt, eftersom det inte är nödvändigt att det finns en implementering för ditt gränssnitt. </para>

@ -1219,7 +1219,7 @@ struct TypeDef {
<para>Det finns ingen anledning att basera mellanprogram för multimedia på &Qt;. Genom att bestämma sig för det, och använda allt de där trevliga &Qt;-strömmarna och andra saker, kan det lätt leda till att mellanprogram bara blir en sak för &Qt;-(eller i själva verket bara &kde;). Jag menar att om jag någonsin ser att GNOME också använder &DCOP;, eller någonting liknande, är det förstås bevisat att jag har fel. </para>
<para>Fastän jag vet att &DCOP; i grunden inte känner till de datatyper som det skickar, så att man skulle kunna använda &DCOP; utan &Qt;, se hur det används i daglig &kde;-användning: man skickar runt typer som <classname>QString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, .... De här använder &Qt;:s-serialisering. Så om någon väljer att stöda &DCOP; i ett GNOME-program, måste han antingen ange att han använder <classname>QString</classname>,... typer (även om han inte gör det), och emulera sättet som &Qt; använder för strömmar, eller så skulle han skicka runt andra sträng-, pixmap- och rect-typer, och på så sätt ändå inte kunna fungera ihop med &kde;-program. </para>
<para>Fastän jag vet att &DCOP; i grunden inte känner till de datatyper som det skickar, så att man skulle kunna använda &DCOP; utan &Qt;, se hur det används i daglig &kde;-användning: man skickar runt typer som <classname>TQString</classname>, <classname>QRect</classname>, <classname>QPixmap</classname>, <classname>QCString</classname>, .... De här använder &Qt;:s-serialisering. Så om någon väljer att stöda &DCOP; i ett GNOME-program, måste han antingen ange att han använder <classname>TQString</classname>,... typer (även om han inte gör det), och emulera sättet som &Qt; använder för strömmar, eller så skulle han skicka runt andra sträng-, pixmap- och rect-typer, och på så sätt ändå inte kunna fungera ihop med &kde;-program. </para>
<para>Nå, hur som helst var alltid &arts; avsett att fungera med eller utan &kde;, med eller utan &Qt;, med eller utan X11, och kanske till och med med eller utan &Linux; (och jag har inte ens några invändningar mot personer som anpassar det till operativsystem som inte är fria). </para>

@ -1685,8 +1685,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>avbryt ett redan schemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void cancelEvent(const QString&amp; <replaceable>kalenderfil</replaceable>,
const QString&amp; <replaceable>händelse-ID</replaceable>)
<synopsis>void cancelEvent(const TQString&amp; <replaceable>kalenderfil</replaceable>,
const TQString&amp; <replaceable>händelse-ID</replaceable>)
</synopsis>
<refsect2>
@ -1728,8 +1728,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>aktivera ett redan schemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void triggerEvent(const QString&amp; <replaceable>kalenderfil</replaceable>,
const QString&amp; <replaceable>händelse-ID</replaceable>)
<synopsis>void triggerEvent(const TQString&amp; <replaceable>kalenderfil</replaceable>,
const TQString&amp; <replaceable>händelse-ID</replaceable>)
</synopsis>
<refsect2>
@ -1773,8 +1773,8 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>aktivera eller avbryt ett redan schemalagt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>void handleEvent(const QString&amp; <replaceable>kalenderfil</replaceable>,
const QString&amp; <replaceable>händelse-ID</replaceable>)
<synopsis>void handleEvent(const TQString&amp; <replaceable>kalenderfil</replaceable>,
const TQString&amp; <replaceable>händelse-ID</replaceable>)
</synopsis>
<refsect2>
@ -1824,43 +1824,43 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>schemalägg ett nytt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const QString&amp; <replaceable>fg</replaceable>,
const QString&amp; <replaceable>teckensnitt</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>fg</replaceable>,
const TQString&amp; <replaceable>teckensnitt</replaceable>,
const KUrl&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
const QString&amp; <replaceable>upprepning</replaceable>,
const TQString&amp; <replaceable>upprepning</replaceable>,
int <replaceable>delrepetition_intervall</replaceable>,
int <replaceable>delrepetition_antal</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>, int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const QString&amp; <replaceable>fg</replaceable>,
const QString&amp; <replaceable>teckensnitt</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>fg</replaceable>,
const TQString&amp; <replaceable>teckensnitt</replaceable>,
const KURL&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
int <replaceable>upprepningsantal</replaceable>)
</synopsis>
<synopsis>bool scheduleMessage(const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleMessage(const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const QString&amp; <replaceable>fg</replaceable>,
const QString&amp; <replaceable>teckensnitt</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>fg</replaceable>,
const TQString&amp; <replaceable>teckensnitt</replaceable>,
const KURL&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
const QString&amp; <replaceable>slut_datum_tid</replaceable>)
const TQString&amp; <replaceable>slut_datum_tid</replaceable>)
</synopsis>
<refsect2>
@ -1897,7 +1897,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bg</parameter></term>
<listitem>
<para>Anger bakgrundsfärg för att visa meddelandet. Formatet på strängen kan vara <quote>#RRGGBB</quote> (som returneras av <methodname>QColor::name()</methodname>), där RR, GG och BB är tvåsiffrors hexadecimala värden för röd, grön och blå. Alternativt kan strängen vara något av de andra format som accepteras av <methodname>QColor::setNamedColor()</methodname>, såsom ett namn från X-färgdatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Ange strängens värde som null för att välja aktuell förvald bakgrundsfärg.</para>
<para>Anger bakgrundsfärg för att visa meddelandet. Formatet på strängen kan vara <quote>#RRGGBB</quote> (som returneras av <methodname>TQColor::name()</methodname>), där RR, GG och BB är tvåsiffrors hexadecimala värden för röd, grön och blå. Alternativt kan strängen vara något av de andra format som accepteras av <methodname>TQColor::setNamedColor()</methodname>, såsom ett namn från X-färgdatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Ange strängens värde som null för att välja aktuell förvald bakgrundsfärg.</para>
</listitem>
</varlistentry>
@ -1999,21 +1999,21 @@ continuously in the background and alarms are always enabled.</para>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleFile(const KUrl&amp; <replaceable>webbadress</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const KUrl&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
const QString&amp; <replaceable>upprepning</replaceable>,
const TQString&amp; <replaceable>upprepning</replaceable>,
int <replaceable>delrepetition_intervall</replaceable>,
int <replaceable>delrepetition_antal</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>webbadress</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const KURL&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
@ -2021,15 +2021,15 @@ continuously in the background and alarms are always enabled.</para>
int <replaceable>upprepningsantal</replaceable>)
</synopsis>
<synopsis>bool scheduleFile(const KURL&amp; <replaceable>webbadress</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>bg</replaceable>,
const TQString&amp; <replaceable>bg</replaceable>,
const KURL&amp; <replaceable>ljudadress</replaceable>,
int <replaceable>påminnelse</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
const QString&amp; <replaceable>slut_datum_tid</replaceable>)
const TQString&amp; <replaceable>slut_datum_tid</replaceable>)
</synopsis>
<refsect2>
@ -2066,7 +2066,7 @@ continuously in the background and alarms are always enabled.</para>
<varlistentry>
<term><parameter>bg</parameter></term>
<listitem>
<para>Anger bakgrundsfärg för att visa filen. Formatet på strängen kan vara <quote>#RRGGBB</quote> (som returneras av <methodname>QColor::name()</methodname>), där RR, GG och BB är tvåsiffrors hexadecimala värden för röd, grön och blå. Alternativt kan strängen vara något av de andra format som accepteras av <methodname>QColor::setNamedColor()</methodname>, såsom ett namn från X-färgdatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Ange strängens värde som null för att välja aktuell förvald bakgrundsfärg.</para>
<para>Anger bakgrundsfärg för att visa filen. Formatet på strängen kan vara <quote>#RRGGBB</quote> (som returneras av <methodname>TQColor::name()</methodname>), där RR, GG och BB är tvåsiffrors hexadecimala värden för röd, grön och blå. Alternativt kan strängen vara något av de andra format som accepteras av <methodname>TQColor::setNamedColor()</methodname>, såsom ett namn från X-färgdatabasen (t.ex. <quote>red</quote> eller <quote>steelblue</quote>). Ange strängens värde som null för att välja aktuell förvald bakgrundsfärg.</para>
</listitem>
</varlistentry>
@ -2152,29 +2152,29 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>schemalägg ett nytt alarm som kör ett skalkommando.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandorad</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandorad</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>upprepning</replaceable>,
const TQString&amp; <replaceable>upprepning</replaceable>,
int <replaceable>delrepetition_intervall</replaceable>,
int <replaceable>delrepetition_antal</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandorad</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandorad</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
int <replaceable>upprepningsantal</replaceable>)
</synopsis>
<synopsis>bool scheduleCommand(const QString&amp; <replaceable>commandorad</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleCommand(const TQString&amp; <replaceable>commandorad</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
const QString&amp; <replaceable>slut_datum_tid</replaceable>)
const TQString&amp; <replaceable>slut_datum_tid</replaceable>)
</synopsis>
<refsect2>
@ -2276,41 +2276,41 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>schemalägg ett nytt alarm som skickar e-post.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>från_id</replaceable>,
const QString&amp; <replaceable>adresser</replaceable>,
const QString&amp; <replaceable>rubrik</replaceable>,
const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>bilagor</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>från_id</replaceable>,
const TQString&amp; <replaceable>adresser</replaceable>,
const TQString&amp; <replaceable>rubrik</replaceable>,
const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>bilagor</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
const QString&amp; <replaceable>upprepning</replaceable>,
const TQString&amp; <replaceable>upprepning</replaceable>,
int <replaceable>delrepetition_intervall</replaceable>,
int <replaceable>delrepetition_antal</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>från_id</replaceable>,
const QString&amp; <replaceable>adresser</replaceable>,
const QString&amp; <replaceable>rubrik</replaceable>,
const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>bilagor</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>från_id</replaceable>,
const TQString&amp; <replaceable>adresser</replaceable>,
const TQString&amp; <replaceable>rubrik</replaceable>,
const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>bilagor</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
int <replaceable>flaggor</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
int <replaceable>upprepningsantal</replaceable>)
</synopsis>
<synopsis>bool scheduleEmail(const QString&amp; <replaceable>från_id</replaceable>,
const QString&amp; <replaceable>adresser</replaceable>,
const QString&amp; <replaceable>rubrik</replaceable>,
const QString&amp; <replaceable>meddelande</replaceable>,
const QString&amp; <replaceable>bilagor</replaceable>,
const QString&amp; <replaceable>datum_tid</replaceable>,
<synopsis>bool scheduleEmail(const TQString&amp; <replaceable>från_id</replaceable>,
const TQString&amp; <replaceable>adresser</replaceable>,
const TQString&amp; <replaceable>rubrik</replaceable>,
const TQString&amp; <replaceable>meddelande</replaceable>,
const TQString&amp; <replaceable>bilagor</replaceable>,
const TQString&amp; <replaceable>datum_tid</replaceable>,
int <replaceable>avbryt_försenat</replaceable>,
nt <replaceable>flaggor</replaceable>,
int <replaceable>upprepningstyp</replaceable>,
int <replaceable>upprepningsintervall</replaceable>,
const QString&amp; <replaceable>sluttid</replaceable>)
const TQString&amp; <replaceable>sluttid</replaceable>)
</synopsis>
<refsect2>
@ -2439,7 +2439,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Visar <link linkend="alarm-edit-dlg">dialogrutan för alarmredigering</link> för att redigera ett alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool edit(const QString&amp; <replaceable>händelse-ID</replaceable>)
<synopsis>bool edit(const TQString&amp; <replaceable>händelse-ID</replaceable>)
</synopsis>
<refsect2>
@ -2477,7 +2477,7 @@ continuously in the background and alarms are always enabled.</para>
<refpurpose>Visar <link linkend="alarm-edit-dlg">dialogrutan för alarmredigering</link> för att redigera ett nytt alarm.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>bool editNew(const QString&amp; <replaceable>mallnamn</replaceable>)
<synopsis>bool editNew(const TQString&amp; <replaceable>mallnamn</replaceable>)
</synopsis>
<refsect2>

@ -734,7 +734,7 @@ Utskriven den: 2004-07-13 18:10
<refpurpose>Returnerar &karm;s version.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString version()
<synopsis>TQString version()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -752,7 +752,7 @@ Utskriven den: 2004-07-13 18:10
<refpurpose>Returnerar &karm;s avslutning.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString quit()
<synopsis>TQString quit()
</synopsis>
</refsynopsisdiv>
<refsect1>
@ -770,7 +770,7 @@ Utskriven den: 2004-07-13 18:10
<refpurpose>Kontrollera om en aktivitet på toppnivå finns.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString hastodo(QString aktivitetsnamn)
<synopsis>TQString hastodo(TQString aktivitetsnamn)
</synopsis>
<refsect2>
<title>Parametrar</title>
@ -786,7 +786,7 @@ Utskriven den: 2004-07-13 18:10
</refsynopsisdiv>
<refsect1>
<title>Beskrivning</title>
<para><function>hastodo(QString taskname)</function> är ett &DCOP;-anrop som letar efter en uppgift med angivet namn. Om den hittas, returneras iCalendar-användarid som identifierar uppgiften. Om den inte hittas, returneras en tom sträng. </para>
<para><function>hastodo(TQString taskname)</function> är ett &DCOP;-anrop som letar efter en uppgift med angivet namn. Om den hittas, returneras iCalendar-användarid som identifierar uppgiften. Om den inte hittas, returneras en tom sträng. </para>
<para>Filen som söks igenom är iCalendar-filen som &karm; för närvarande har öppen. Alla uppgiftsträd söks igenom, inte bara uppgifter på översta nivån. Om mer än en uppgift har ett matchande namn, returneras den första som hittas.</para>
</refsect1>
</refentry>
@ -800,7 +800,7 @@ Utskriven den: 2004-07-13 18:10
<refpurpose>Lägg till en ny aktivitet.</refpurpose>
</refnamediv>
<refsynopsisdiv>
<synopsis>QString addtodo(QString aktivitetsnamn)
<synopsis>TQString addtodo(TQString aktivitetsnamn)
</synopsis>
<refsect2>
<title>Parametrar</title>
@ -817,7 +817,7 @@ Utskriven den: 2004-07-13 18:10
<refsect1>
<title>Beskrivning</title>
<para><function>addtodo(QString todoname)</function> är en &DCOP;-funktion som lägger till en ny uppgift på översta nivån i nuvarande lagringsobjekt. Den nya uppgiftens användarid returneras. </para>
<para><function>addtodo(TQString todoname)</function> är en &DCOP;-funktion som lägger till en ny uppgift på översta nivån i nuvarande lagringsobjekt. Den nya uppgiftens användarid returneras. </para>
</refsect1>
</refentry>

@ -47,8 +47,8 @@
<refsect1>
<title>Exempel</title>
<para>För att visa hjälp för klassen <classname>QString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>QString</option></userinput></screen>
<para>För att visa hjälp för klassen <classname>TQString</classname>:</para>
<screen><userinput><command>qtdoc</command> <option>TQString</option></userinput></screen>
</refsect1>
<refsect1>

@ -160,15 +160,15 @@ return a.exec();
</orderedlist>
</para>
<para>Det andra objektet i vårt program är tryckknappen, en instans av klassen <classname>QPushButton</classname>. Av de två konstruktorer som finns för att skapa klassen, använder vi den andra. Den tar en text, som är textinnehållet i knappen. Här är det strängen "Hello world!". Därefter anropar vi metoden <methodname>resize()</methodname> för att ändra storlek på knappen i enlighet med dess innehåll. Knappen måste bli större för att göra strängen fullständigt synlig. </para>
<para>Men vad gäller för metoden <methodname>show()</methodname>? Nu märker du, att som de flesta andra grafiska komponenter, är <classname>QPushButton</classname> baserad på enkelt arv. Dokumentationen säger, ärver <classname>QButton</classname>. Följ länken till klassen <classname>QButton</classname>. Det visar många andra komponenter som ärvs av <classname>QPushButton</classname>, som vi senare använder för att förklara signal/slot-mekanismen. Hur som helst finns inte metoden <methodname>show()</methodname> listad, och därför måste den vara en metod som också tillhandahålls via arv. Klassen som <classname>QButton</classname> ärver är <classname>QWidget</classname>. Följ bara länken igen, så ser du en hel mängd metoder som klassen QWidget tillhandahåller, inklusive metoden <methodname>show()</methodname>. Nu förstår vi vad som gjordes i exemplet med knappen: <orderedlist>
<para>Men vad gäller för metoden <methodname>show()</methodname>? Nu märker du, att som de flesta andra grafiska komponenter, är <classname>QPushButton</classname> baserad på enkelt arv. Dokumentationen säger, ärver <classname>QButton</classname>. Följ länken till klassen <classname>QButton</classname>. Det visar många andra komponenter som ärvs av <classname>QPushButton</classname>, som vi senare använder för att förklara signal/slot-mekanismen. Hur som helst finns inte metoden <methodname>show()</methodname> listad, och därför måste den vara en metod som också tillhandahålls via arv. Klassen som <classname>QButton</classname> ärver är <classname>TQWidget</classname>. Följ bara länken igen, så ser du en hel mängd metoder som klassen TQWidget tillhandahåller, inklusive metoden <methodname>show()</methodname>. Nu förstår vi vad som gjordes i exemplet med knappen: <orderedlist>
<listitem><para>Skapa en instans av <classname>QPushButton</classname>, och använd den andra konstruktorn för att ange knappens text</para></listitem>
<listitem><para>Ändra storlek på komponenten till dess innehåll</para></listitem>
<listitem><para>Ange komponenten som huvudkomponent i instansen av <classname>QApplication</classname></para></listitem>
<listitem><para>Tala om för den grafiska komponenten att den ska visas på skärmen genom att anropa <methodname>show()</methodname>, en metod som ärvts från <classname>QWidget</classname></para></listitem>
<listitem><para>Tala om för den grafiska komponenten att den ska visas på skärmen genom att anropa <methodname>show()</methodname>, en metod som ärvts från <classname>TQWidget</classname></para></listitem>
</orderedlist>
</para>
<para>Efter att ha anropat metoden <methodname>exec()</methodname>, är programmet synligt för användaren, och visar ett fönster med knappen "Hello world!". Observera att program med grafiska gränssnitt beter sig något annorlunda jämfört med procedurbaserade program. Den viktigaste saken här är att programmet går in i en så kallad "huvudhändelsesnurra". Det betyder att programmet måste vänta på användarens åtgärder och därefter reagera på dem. Det betyder också, för ett QT-program, att programmet måste vara i huvudhändelsesnurran för att starta händelsehanteringen. Nästa avsnitt beskriver kortfattat vad det betyder förprogrammeraren och vad QT erbjuder för att hantera händelser. </para>
<note><para>För användare som redan är avancerade: Knappen har ingen överliggande komponent deklarerad i konstruktorn. Därför är den en toppnivåkomponent och kör med en lokal händelsesnurra som inte behöver vänta på huvudhändelsesnurran. Se dokumentationen för klassen QWidget och KDE:s biblioteksreferensguide.</para>
<note><para>För användare som redan är avancerade: Knappen har ingen överliggande komponent deklarerad i konstruktorn. Därför är den en toppnivåkomponent och kör med en lokal händelsesnurra som inte behöver vänta på huvudhändelsesnurran. Se dokumentationen för klassen TQWidget och KDE:s biblioteksreferensguide.</para>
</note>
</sect3>
@ -183,7 +183,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Nu fortsätter vi med att ge programmet "liv" genom att behandla användarhändelser. I allmänhet har användaren två sätt att kommunicera med ett program: musen och tangentbordet. Ett grafiskt användargränssnitt måste tillhandahålla metoder för båda sätten, som detekterar åtgärder och gör något som reaktion på åtgärderna. </para>
<para>Fönstersystemet skickar därför alla kommunikationshändelser till motsvarande program. <classname>QApplication</classname> skickar dem därefter till det aktiva fönstret som ett <classname>QEvent</classname>, och komponenterna själva måste bestämma vad som ska göras med dem. En komponent tar emot händelsen och behandlar <methodname>QWidget::event(QEvent*)</methodname>, som avgör vilken händelse som har skett och hur reaktionen ska ske. Metoden <methodname>event()</methodname> gör därför den huvudsakliga händelsehanteringen. Därefter skickar metoden <methodname>event()</methodname> händelsen till så kallade händelsefilter som avgör vad som sker och vad som ska göras med händelsen. Om inget filter signalerar att det är ansvarigt för händelsen, anropas speciell händelsehantering. Därigenom kan vi skilja mellan: <itemizedlist>
<para>Fönstersystemet skickar därför alla kommunikationshändelser till motsvarande program. <classname>QApplication</classname> skickar dem därefter till det aktiva fönstret som ett <classname>QEvent</classname>, och komponenterna själva måste bestämma vad som ska göras med dem. En komponent tar emot händelsen och behandlar <methodname>TQWidget::event(QEvent*)</methodname>, som avgör vilken händelse som har skett och hur reaktionen ska ske. Metoden <methodname>event()</methodname> gör därför den huvudsakliga händelsehanteringen. Därefter skickar metoden <methodname>event()</methodname> händelsen till så kallade händelsefilter som avgör vad som sker och vad som ska göras med händelsen. Om inget filter signalerar att det är ansvarigt för händelsen, anropas speciell händelsehantering. Därigenom kan vi skilja mellan: <itemizedlist>
<listitem><para>Tangentbordshändelser: Tangenterna Tabulator och Skift+Tabulator:</para>
<itemizedlist>
<listitem><para><methodname>virtual void focusInEvent(QFocusEvent *)</methodname></para></listitem>
@ -224,12 +224,12 @@ return a.exec();
</itemizedlist>
</para>
<para>Observera att alla händelsefunktioner är virtuella och protected. Därför kan du implementera om händelser som du behöver i egna komponenter och ange hur din komponent ska reagera. <classname>QWidget</classname> innehåller också några andra virtuella metoder som kan vara användbara i dina program. Hur som helst, är det nödvändigt att känna till <classname>QWidget</classname> väl. </para>
<para>Observera att alla händelsefunktioner är virtuella och protected. Därför kan du implementera om händelser som du behöver i egna komponenter och ange hur din komponent ska reagera. <classname>TQWidget</classname> innehåller också några andra virtuella metoder som kan vara användbara i dina program. Hur som helst, är det nödvändigt att känna till <classname>TQWidget</classname> väl. </para>
</sect2>
<sect2 id="c1s2s4">
<title>Interaktion mellan objekt med signaler och slots</title>
<para>Nu kommer vi till den mest uppenbara fördelen med QT-verktygslådan: signal/slot-mekanismen. Den erbjuder en mycket bekväm och användbar lösning för kommunikation mellan objekt, som oftast löses med återanropsfunktioner i X-windows verktygslådor. Eftersom kommunikationen kräver strikt programmering och ibland gör det mycket svårt att skapa användargränssnitt (som beskrivs i QT-dokumentationen och förklaras i Programming with Qt av K. Dalheimer), uppfann TrollTech ett nytt system där objekt kan skicka signaler som kan anslutas till metoder som deklareras som slots. Som programmerare av C++, behöver man bara veta några saker om mekanismen: <itemizedlist>
<listitem><para>klassdeklarationen av en klass som använder signaler och slots måste innehålla makrot TQ_OBJECT i början (utan ett semikolon), och måste härledas från klassen <classname>QObject</classname> </para></listitem>
<listitem><para>klassdeklarationen av en klass som använder signaler och slots måste innehålla makrot TQ_OBJECT i början (utan ett semikolon), och måste härledas från klassen <classname>TQObject</classname> </para></listitem>
<listitem><para>en signal kan skickas med nyckelordet emit, t.ex. emit signal(parametrar);, inne i vilken medlemsfunktion som helst i en klass som tillåter användning av signaler och slots </para></listitem>
<listitem><para>alla signaler som används av klasser som inte ärvs måste läggas till i klassdeklarationen i en signalsektion </para></listitem>
@ -237,9 +237,9 @@ return a.exec();
<listitem><para>metaobjektkompilatorn moc har körts för deklarationsfilen för att expandera makron och skapa implementeringen (som man inte behöverkänna till). Utdatafilerna från moc kompileras också av C++ kompilatorn. </para></listitem>
</itemizedlist>
</para>
<para>Ett annat sätt att använda signaler utan att härleda från <classname>QObject</classname> är att använda klassen <classname>QSignal</classname>. Se referensdokumentationen för mer information och exempel på användning. Vi antar att du härleder från <classname>QObject</classname> i det följande. </para>
<para>Ett annat sätt att använda signaler utan att härleda från <classname>TQObject</classname> är att använda klassen <classname>QSignal</classname>. Se referensdokumentationen för mer information och exempel på användning. Vi antar att du härleder från <classname>TQObject</classname> i det följande. </para>
<para>På detta sätt kan din klass skicka signaler vart som helst och tillhandahålla slots som signaler kan anslutas till. Genom att använda en signal, behöver du inte bry dig om vem som tar emot den. Du behöver bara skicka signalen, och vilken slot du än ansluter till den kan reagera när den skickas. Dessutom kan en slot användas som en vanlig metod i implementeringen. </para>
<para>För att nu ansluta en signal till en slot, måste du använda metoderna <methodname>connect()</methodname> som tillhandahålls av <classname>QObject</classname> eller, om tillgängliga, speciella metoder som objekt tillhandahåller för att ange anslutningen för en viss signal. </para>
<para>För att nu ansluta en signal till en slot, måste du använda metoderna <methodname>connect()</methodname> som tillhandahålls av <classname>TQObject</classname> eller, om tillgängliga, speciella metoder som objekt tillhandahåller för att ange anslutningen för en viss signal. </para>
<sect3 id="c1s2s4s1">
<title>Exempel på användning</title>
@ -255,16 +255,16 @@ hello.resize( 100, 30 );
a.setMainWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
}
</programlisting>
</para>
<para>Du märker att allt du måste lägga till för att ge knappen mer kommunikation är metoden <methodname>connect()</methodname>: <methodname>connect (&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>;. Vad är betydelsen nu? Klassdeklarationen av QObject säger följande om metoden <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const QObject * avsändare, const char * signal, const QObject * mottagare, const char * medlem ) </methodname></para>
<para>Detta betyder att du måste ange en <classname>QObject</classname>-instanspekare som är signalens avsändare, vilket betyder att den kan skicka signalen, som första parameter. Därefter måste du ange signalen som du vill ansluta till. De två sista parametrarna är mottagarobjektet som tillhandahåller en slot, följt av medlemsfunktionen som är en verklig slot som kommer att köras när signalen skickas. </para>
<para>Du märker att allt du måste lägga till för att ge knappen mer kommunikation är metoden <methodname>connect()</methodname>: <methodname>connect (&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ))</methodname>;. Vad är betydelsen nu? Klassdeklarationen av TQObject säger följande om metoden <methodname>connect()</methodname>: </para>
<para><methodname>bool connect ( const TQObject * avsändare, const char * signal, const TQObject * mottagare, const char * medlem ) </methodname></para>
<para>Detta betyder att du måste ange en <classname>TQObject</classname>-instanspekare som är signalens avsändare, vilket betyder att den kan skicka signalen, som första parameter. Därefter måste du ange signalen som du vill ansluta till. De två sista parametrarna är mottagarobjektet som tillhandahåller en slot, följt av medlemsfunktionen som är en verklig slot som kommer att köras när signalen skickas. </para>
<para>Genom att använda signaler och slots, kan programmets objekt enkelt kommunicera med varandra utan att uttryckligen bero på typen hos mottagarobjektet. Du får lära dig mer om hur den här mekanismen används produktivt senare i handboken. Mer information om signal/slot-mekanismen finns också i <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE:s biblioteksreferensguide</ulink> och <ulink url="doc.trolltech.com">QT:s direktreferens</ulink>. </para>
</sect3>
</sect2>
@ -304,7 +304,7 @@ hello.resize( 100, 30 );
a.setTopWidget( &amp;hello );
QObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
TQObject::connect(&amp;hello, SIGNAL( clicked() ), &amp;a, SLOT( quit() ));
hello.show();
return a.exec();
@ -313,7 +313,7 @@ return a.exec();
</para>
<para>Du märker att vi först har ändrat från <classname>QApplication</classname> till <classname>TDEApplication</classname>. Dessutom var vi tvungna att ändra den tidigare använda metoden <methodname>setMainWidget()</methodname> till <methodname>setTopWidget</methodname> som <classname>TDEApplication</classname> använder för att ange huvudkomponenten. Det är allt! Ditt första KDE-program är klart. Du behöver bara tala om för kompilatorn vilken deklarationssökväg KDE har, och för länkaren att den ska länka med tdecore-biblioteket med -ltdecore. </para>
<para>Eftersom du nu åtminstone vet vad funktionen <function>main()</function> i allmänhet tillhandahåller, och hur ett program blir synligt och tillåter kommunikation mellan användare och objekt, fortsätter vi med nästa kapitel, där vårt första program med &tdevelop; skapas. Där kan du också prova allting som tidigare nämnts, och se effekterna. </para>
<para>Vad du ytterligare bör ha tittat på hittills är QT-referensdokumentationen, särskilt klasserna <classname>QApplication</classname>, <classname>QWidget</classname> och <classname>QObject</classname> och tdecore-biblioteksdokumentationen för klassen <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE:s biblioteksreferensguide</ulink> har också en fullständig beskrivning av hur konstruktorerna i <classname>QApplication</classname> och <classname>TDEApplication</classname> anropas, inklusive behandling av kommandoradsväljare. </para>
<para>Vad du ytterligare bör ha tittat på hittills är QT-referensdokumentationen, särskilt klasserna <classname>QApplication</classname>, <classname>TQWidget</classname> och <classname>TQObject</classname> och tdecore-biblioteksdokumentationen för klassen <classname>TDEApplication</classname>. <ulink url="developer.kde.org/documentation/library/libraryref.html">KDE:s biblioteksreferensguide</ulink> har också en fullständig beskrivning av hur konstruktorerna i <classname>QApplication</classname> och <classname>TDEApplication</classname> anropas, inklusive behandling av kommandoradsväljare. </para>
</sect2>
</sect1>
@ -549,10 +549,10 @@ return a.exec();
16 statusBar()->show();
17
18 // tillåt vyn att ändra statusraden och rubriken
19 connect(m_view, SIGNAL(signalChangeStatusbar(const QString&amp;)),
20 this, SLOT(changeStatusbar(const QString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const QString&amp;)),
22 this, SLOT(changeCaption(const QString&amp;)));
19 connect(m_view, SIGNAL(signalChangeStatusbar(const TQString&amp;)),
20 this, SLOT(changeStatusbar(const TQString&amp;)));
21 connect(m_view, SIGNAL(signalChangeCaption(const TQString&amp;)),
22 this, SLOT(changeCaption(const TQString&amp;)));
23
24 }
</programlisting>
@ -584,7 +584,7 @@ return a.exec();
</itemizedlist>
</para>
<para>Det behöver inte sägas att stabilitet är ett av huvudmålen med konstruktionen. Ingen kan förhindra fel, men ett minimum kan åtminstone uppnås med smarta konstruktionsmål och utbredd användning av objektorienterad konstruktion. C++ gör det till ett nöje att programmera om du vet hur man utnyttjar dess möjligheter - arv, att dölja information och återanvändning av befintlig kod. </para>
<para>När ett KDE- eller QT-projekt skapas, måste du alltid ha en vy som ärver en QWidget, antingen med direkt arv eller eftersom en bibliotekskomponent som du vill använda ärver QWidget. Därför harProgramguiden redan skapat en vy som är en instans av klassen programnamnView, som redan ärver QWidget. </para>
<para>När ett KDE- eller QT-projekt skapas, måste du alltid ha en vy som ärver en TQWidget, antingen med direkt arv eller eftersom en bibliotekskomponent som du vill använda ärver TQWidget. Därför harProgramguiden redan skapat en vy som är en instans av klassen programnamnView, som redan ärver TQWidget. </para>
<para>Det här kapitlet beskriver därför hur bibliotekskomponenter används för att skapa vyer för KDE- och QT-program som skapas med &tdevelop;. Därefter tar vi en titt på biblioteken och vilka sorters vyer de redan erbjuder. </para>
</sect1>
<sect1 id="c4s2">
@ -601,7 +601,7 @@ return a.exec();
<para>När du tittar på första sidan av QT:s direktdokumentation, hittar du en länk till "Widget Screenshots", där du kan titta på hur de grafiska komponenterna som QT innehåller ser ut. De är färdiga att använda, och kan kombineras för att ge komplexa komponenter som kan skapa programvyer eller dialogrutor. I följande stycken beskriver vi några av dessa, som är mycket användbara för att skapa programvyer, men kom ihåg att KDE-biblioteken ibland innehåller andra komponenter med samma syfte. Dessa granskas i nästa avsnitt. </para>
<para>Här är några tips om vilken Qt-komponent som kan användas för vilket ändamål: <orderedlist>
<listitem><para>Om vyområdet inte är stort nog för att visa all data, måste användaren kunna panorera i dokumentet med lister till vänster och längst ner i vyn. QT tillhandahåller klassen <classname>QScrollView</classname> för detta, som erbjuder ett underliggande område med panoreringsmöjlighet. Som tidigare förklarats, kan du låta din egen grafiska komponent ärva <classname>QScrollView</classname>, eller använda en instans för att hantera ditt dokuments vykomponent. </para></listitem>
<listitem><para>För att skapa en egen ScrollView, låt komponenten View ärva från <classname>QWidget</classname> och lägg till vertikala och horisontella rullningslister med <classname>QScrollBars</classname>. (Detta görs av KDE:s komponent TDEHTMLView.) </para></listitem>
<listitem><para>För att skapa en egen ScrollView, låt komponenten View ärva från <classname>TQWidget</classname> och lägg till vertikala och horisontella rullningslister med <classname>QScrollBars</classname>. (Detta görs av KDE:s komponent TDEHTMLView.) </para></listitem>
<listitem><para>För textbehandling, använd <classname>QTextEdit</classname>. Den här klassen tillhandahåller en fullständig grafisk texteditorkomponent, som redan kan klippa ut, kopiera och klistra text och hanteras av en vy med rullningslister. </para></listitem>
<listitem><para>Använd <classname>QTable</classname> för att visa data som är arrangerat i en tabell. Eftersom <classname>QTable</classname> också hanteras av rullningslister, erbjuder den en bra lösning för program med tabellberäkningar. </para></listitem>
<listitem><para>För att visa två olika grafiska komponenter eller två instanser av samma komponent samtidigt, använd <classname>QSplitter</classname>. Den tillåter att vyer läggs sida vid sida med horisontella eller vertikala avdelare. Kmail är ett bra exempel på hur det ser ut. Huvudfönstret är delat vertikalt av en avdelare, och det högra fönstret är återigen avdelat horisontellt. </para></listitem>
@ -653,7 +653,7 @@ return a.exec();
<title>Inställning av snabbtangenter</title>
<para>Något mycket professionellt som du alltid bör lägga till i programmet är snabbtangenter. De används oftast av erfarna användare som vill arbeta snabbt med sina program och är villiga att lära sig genvägar. KDE-biblioteken erbjuder klassen <classname>TDEAction</classname> för detta, som tillhandahåller snabbtangenter och åtkomst av globalt inställda standardgenvägar. </para>
<para>Normalt använder bara ramprogram skapade av &tdevelop; vanliga snabbtangenter som F1 för att komma åt direkthjälp, Ctrl+N för Ny fil, etc. </para>
<para>Om programmet innehåller många snabbtangenter bör du göra dem anpassningsbara via en inställningsmeny. Antingen kan det kombineras med annan programinställning i en QWidget eller vara ensamt. KDE-biblioteket tillhandahåller redan en <classname>KKeyChooser</classname> för att använda i flikdialogrutor, medan <classname>KKeyDialog</classname> tillhandahåller en inställningsdialogruta för snabbtangenter som är färdig att använda. </para>
<para>Om programmet innehåller många snabbtangenter bör du göra dem anpassningsbara via en inställningsmeny. Antingen kan det kombineras med annan programinställning i en TQWidget eller vara ensamt. KDE-biblioteket tillhandahåller redan en <classname>KKeyChooser</classname> för att använda i flikdialogrutor, medan <classname>KKeyDialog</classname> tillhandahåller en inställningsdialogruta för snabbtangenter som är färdig att använda. </para>
</sect1>
</chapter>
@ -696,7 +696,7 @@ return a.exec();
<sect1 id="c8s4">
<title>Knappen <guibutton>Vad är det här?</guibutton></title>
<para>Knappen <guibutton>Vad är det här...?</guibutton> tillhandahåller hjälpfönster med syftet att ge användaren hjälp med en viss komponent i vyn som används eller ett objekt i en verktygsrad. Den finns i verktygsraden och aktiveras när användaren trycker på knappen. Markören ändras till en pilmarkör med ett frågetecken, precis som knappen själv ser ut. Därefter kan användaren klicka på en synlig komponent och får då ett hjälpfönster. Som en övning kan du prova beteendet med knappen <guibutton>Vad är det här...?</guibutton> inne i &tdevelop;. </para>
<para>För att lägga till "Vad är det här...?" hjälp i en av dina grafiska komponenter, använd den statiska metoden <methodname>QWhatsThis::add(QWidget *widget, const QString &amp;text)</methodname> </para>
<para>För att lägga till "Vad är det här...?" hjälp i en av dina grafiska komponenter, använd den statiska metoden <methodname>QWhatsThis::add(TQWidget *widget, const TQString &amp;text)</methodname> </para>
</sect1>
</chapter>

@ -238,7 +238,7 @@
</formalpara></listitem>
<listitem><formalpara><title><ulink url="kdeapi:tdeui/KPixmapIO">KPixmapIO</ulink></title>
<para>Snabb konvertering mellan <classname>QImage</classname> och <classname>QPixmap</classname>. </para>
<para>Snabb konvertering mellan <classname>TQImage</classname> och <classname>QPixmap</classname>. </para>
</formalpara></listitem>
</itemizedlist>
@ -473,7 +473,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>Qt:s lågnivåritmodell är baserad på de möjligheter som erbjuds av X11 och andra fönstersystem där en version av Qt finns. Men den utökar också dem genom att implementera ytterligare funktioner som godtyckliga affina omvandlingar för text och pixmappar. </para>
<para>Den centrala grafiska klassen för att rita tvådimensionellt med Qt är <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Den kan rita på en <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Det finns tre möjliga ritenheter implementerade: En är <ulink url="kdeapi:qt/QWidget">QWidget</ulink>, som representerar en grafisk komponent på skärmen. Den andra är <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, som representerar en skrivare, och producerar Postskript-utmatning. Den tredje är klassen <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, som spelar in ritkommandon och kan spara dem till disk, och sedan spela upp dem. Ett möjligt lagringsformat för ritkommandon är W3C-standarden SVG. </para>
<para>Den centrala grafiska klassen för att rita tvådimensionellt med Qt är <ulink url="kdeapi:qt/QPainter">QPainter</ulink>. Den kan rita på en <ulink url="kdeapi:qt/QPaintDevice">QPaintDevice</ulink>. Det finns tre möjliga ritenheter implementerade: En är <ulink url="kdeapi:qt/TQWidget">TQWidget</ulink>, som representerar en grafisk komponent på skärmen. Den andra är <ulink url="kdeapi:qt/QPrinter">QPrinter</ulink>, som representerar en skrivare, och producerar Postskript-utmatning. Den tredje är klassen <ulink url="kdeapi:qt/QPicture">QPicture</ulink>, som spelar in ritkommandon och kan spara dem till disk, och sedan spela upp dem. Ett möjligt lagringsformat för ritkommandon är W3C-standarden SVG. </para>
<para>Alltså är det möjligt att återanvända uppritningskoden som du använder för att visa en grafisk komponent för utskrift, med stöd för samma funktioner. Naturligtvis används koden i praktiken i ett något annorlunda sammanhang. Rita på en grafisk komponent görs nästan enbart i metoden paintEvent() i en komponentklass. </para>
@ -664,10 +664,10 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para>QBrush::QBrush(BrushStyle): detta skapar en svart borste, med ett av de fördefinierade mönstren som visas nedan.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, BrushStyle): detta skapar en färgad borste, med ett av de fördefinierade mönstren som visas nedan.</para>
<para>QBrush::QBrush(const TQColor &amp;, BrushStyle): detta skapar en färgad borste, med ett av de fördefinierade mönstren som visas nedan.</para>
</listitem>
<listitem>
<para>QBrush::QBrush(const QColor &amp;, const QPixmap): detta skapar en färgad borste, med det egna mönstret som anges som andra parameter.</para>
<para>QBrush::QBrush(const TQColor &amp;, const QPixmap): detta skapar en färgad borste, med det egna mönstret som anges som andra parameter.</para>
</listitem>
</itemizedlist>
@ -685,7 +685,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-color">
<title>Färg</title>
<para>Färger har betydelse både när kurvor ritas, och när former fylls i. Färger representeras av klassen <ulink url="kdeapi:qt/QColor">QColor</ulink> i Qt. Qt stöder inte avancerade grafikfunktioner som ICC-färgprofiler och färgkorrektion. Färger skapas oftast genom att ange deras röda, gröna och bläa komponenter, eftersom RGB-modellen är sättet som bildpunkter sätts samman på en bildskärm. </para>
<para>Färger har betydelse både när kurvor ritas, och när former fylls i. Färger representeras av klassen <ulink url="kdeapi:qt/TQColor">TQColor</ulink> i Qt. Qt stöder inte avancerade grafikfunktioner som ICC-färgprofiler och färgkorrektion. Färger skapas oftast genom att ange deras röda, gröna och bläa komponenter, eftersom RGB-modellen är sättet som bildpunkter sätts samman på en bildskärm. </para>
<para>Det är också möjligt att använda färgton, färgmättnad och värde. Den här HSV-representationen är den som används i GTK:s färgdialogruta, t.ex. i GIMP. Där motsvarar färgtonen en vinkel i färghjulet, medan färgmättnaden motsvarar avståndet från cirkelns mitt. Värdet väljs med ett särskilt skjutreglage. </para>
@ -738,7 +738,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<para><ulink url="kdeapi:qt/QPixmap">QPixmap</ulink> motsvarar direkt pixmappsobjekt i X11. En pixmapp är ett objekt på serversidan och kan, med ett modernt grafikkort, till och med lagras direkt i kortets minne. Det gör det <emphasis>mycket</emphasis> effektivt att överföra en pixmapp till skärmen. En pixmapp fungerar också som en motsvarighet till grafiska komponenter utanför skärmen. QPixmap-klassen är en delklass till QPaintDevice, så det går att rita på den med en QPainter. Elementära ritoperationer accelereras ofta av modern grafik. Därför är ett vanligt användningsmönster att använda en pixmapp för dubbelbuffring. Detta betyder att istället för att rita direkt på en grafisk komponent, ritar man på ett tillfälligt pixmappsobjekt och använder funktionen <ulink url="kdeapi:qt/QPaintDevice#bitBlt-1">bitBlt</ulink> för att överföra det till komponenten. För komplexa omritningar, hjälper detta till att undvika flimmer. </para>
<para>I motsats till detta, finns <ulink url="kdeapi:qt/QImage">QImage</ulink>-objekt på klientsidan. Deras huvuduppgift är att ge direkt åtkomst till bildpunkterna i bilden. Det gör dem användbara för bildhantering, och saker som att ladda och spara till disk (Metoden load() för QPixmap använder QImage som ett mellansteg). Å andra sidan, så blir uppritning av en bild på en grafisk komponent en ganska krävande åtgärd, eftersom det innebär en överföring till X-servern, vilket kan ta en viss tid, särskilt för stora bilder och fjärrservrar. Beroende på färgdjupet, kan konvertering från QImage till QPixmap också kräva användning av gitter. </para>
<para>I motsats till detta, finns <ulink url="kdeapi:qt/TQImage">TQImage</ulink>-objekt på klientsidan. Deras huvuduppgift är att ge direkt åtkomst till bildpunkterna i bilden. Det gör dem användbara för bildhantering, och saker som att ladda och spara till disk (Metoden load() för QPixmap använder TQImage som ett mellansteg). Å andra sidan, så blir uppritning av en bild på en grafisk komponent en ganska krävande åtgärd, eftersom det innebär en överföring till X-servern, vilket kan ta en viss tid, särskilt för stora bilder och fjärrservrar. Beroende på färgdjupet, kan konvertering från TQImage till QPixmap också kräva användning av gitter. </para>
</simplesect>
@ -746,7 +746,7 @@ url="kdeapi:tdeui/KAnimWidget">KAnimWidget</ulink></title>
<simplesect id="qpainter-drawingtext">
<title>Rita text</title>
<para>Text kan ritas med en av de överlastade varianterna av metoden QPainter::drawText(). De ritar en QString, antingen vid en given punkt eller inne i en given rektangel, med teckensnittet som ställts in med QPainter::setFont(). Det finns också en parameter som tar en ELLER-kombination av vissa flaggor från uppräkningstyperna <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> och <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink>. </para>
<para>Text kan ritas med en av de överlastade varianterna av metoden QPainter::drawText(). De ritar en TQString, antingen vid en given punkt eller inne i en given rektangel, med teckensnittet som ställts in med QPainter::setFont(). Det finns också en parameter som tar en ELLER-kombination av vissa flaggor från uppräkningstyperna <ulink url="kdeapi:qt/Qt#AlignmentFlags-enum">Qt::AlignmentFlags</ulink> och <ulink url="kdeapi:qt/Qt#TextFlags-enum">Qt::TextFlags</ulink>. </para>
<para>Med början i version 3.0, hanterar Qt fullständig textlayout också för språk som skrivs från höger till vänster. </para>
@ -1002,7 +1002,7 @@ rc_DATA = kviewui.rc
<programlisting>void MainWindow::popupRequested()
{
QWidget *w = factory()->container("context_popup", this);
TQWidget *w = factory()->container("context_popup", this);
QPopupMenu *popup = static_cast&lt;QPopupMenu *&gt;(w);
popup->exec(QCursor::pos());
}
@ -1138,13 +1138,13 @@ X-TDE-ServiceType=KDevelop/Part
Name=KDevelop Part
[PropertyDef::X-KDevelop-Scope]
Type=QString
Type=TQString
[PropertyDef::X-KDevelop-ProgrammingLanguages]
Type=QStringList
[PropertyDef::X-KDevelop-Args]
Type=QString
Type=TQString
</programlisting>
<para>Förutom de vanliga posterna, förevisar det här exemplet hur man anger att en tjänst har vissa egenskaper. Varje definition av en egenskap motsvarar en grupp <literal>[PropertyDef::name]</literal> i konfigurationsfilen. I gruppen, anger posten <literal>Type</literal> egenskapens typ. Möjliga typer är allt som kan lagras i en <ulink url="kdeapi:qt/QVariant">QVariant</ulink>. </para>
@ -1196,11 +1196,11 @@ X-KDevelop-Scope=Project
<para>Med objektet <classname>KService</classname> tillgängligt, kan du mycket lätt ladda biblioteket och få en pekare till dess tillverkningsobjekt. </para>
<programlisting>KService *service = ...
QString libName = QFile::encodeName(service->library());
TQString libName = QFile::encodeName(service->library());
KLibFactory *factory = KLibLoader::self()->factory(libName);
if (!factory) {
QString name = service->name();
QString errorMessage = KLibLoader::self()->lastErrorMessage();
TQString name = service->name();
TQString errorMessage = KLibLoader::self()->lastErrorMessage();
KMessageBox::error(0, i18n("There was an error loading service %1.\n"
"The diagnostics from libtool is:\n%2")
.arg(name).arg(errorMessage);
@ -1211,7 +1211,7 @@ if (!factory) {
<programlisting>if (factory->inherits("KParts::Factory")) {
KParts::Factory *partFactory = static_cast&lt;KParts::Factory*&gt;(factory);
QObject *obj = partFactory->createPart(parentWidget, widgetName,
TQObject *obj = partFactory->createPart(parentWidget, widgetName,
parent, name, "KParts::ReadOnlyPart");
...
} else {
@ -1256,7 +1256,7 @@ X-TDE-StartupNotify=false
<programlisting>DCOPClient *client = kapp->dcopClient();
client->attach();
if (!client->isApplicationRegistered("tdeio_uiserver")) {
QString error;
TQString error;
if (TDEApplication::startServiceByName("tdeio_uiserver", QStringList(), &amp;error))
cout &lt;&lt; "Start av TDEIO-server misslyckades med meddelandet " &lt;&lt; error &lt;&lt; endl;
}
@ -1275,7 +1275,7 @@ if (!client->call("tdeio_uiserver", "UIServer", "setListMode(bool)",
<para>I exemplet som ges här, startas tjänsten "med namn", dvs. första argumentet till <function>TDEApplication::startServiceByName() </function> är namnet, som det anges på raden <literal>Name</literal> i desktop-filen. Ett alternativ är att använda <function>TDEApplication::startServiceByDesktopName()</function>, som använder namnet på desktop-filen som argument, dvs. i det här fallet <literal>"tdeio_uiserver.desktop"</literal>. </para>
<para>Alla dessa anrop har en lista med webbadresser som andra argument, vilket ges till tjänsten på kommandoraden. Det tredje argumentet är en pekare till en <classname>QString</classname>. Om starten av tjänsten misslyckas, tilldelas det här argumentet det översatta felmeddelandet. </para>
<para>Alla dessa anrop har en lista med webbadresser som andra argument, vilket ges till tjänsten på kommandoraden. Det tredje argumentet är en pekare till en <classname>TQString</classname>. Om starten av tjänsten misslyckas, tilldelas det här argumentet det översatta felmeddelandet. </para>
</simplesect>
@ -1385,7 +1385,7 @@ else
<para>Till och med KMimeMagic kan förstås bara avgöra filtypen från innehållet i en lokal fil. För fjärrfiler, finns ytterligare en möjlighet: </para>
<programlisting>KURL url("http://developer.kde.org/favicon.ico");
QString type = TDEIO::NetAccess::mimetype(url);
TQString type = TDEIO::NetAccess::mimetype(url);
if (type == KMimeType::defaultMimeType())
cout &lt;&lt; "Kunde inte avgöra typen" &lt;&lt; endl;
else
@ -1463,7 +1463,7 @@ KRun::run(offer.service(), urlList);
<para>Hämta en ikon för en webbadress. Det här tittar efter webbadressens typ, och returnerar motsvarande ikon. </para>
<programlisting>KURL url("ftp://ftp.kde.org/pub/incoming/wibble.c");
QString icon = KMimeType::iconForURL(url);
TQString icon = KMimeType::iconForURL(url);
</programlisting>
<para>Kör en webbadress. Det här tittar efter webbadressens typ, och startar tillhörande program till typen som användaren föredrar. </para>
@ -1542,7 +1542,7 @@ void FooClass::mkdirResult(TDEIO::Job *job)
<listitem><para>Byter namn på en fil. </para></listitem>
</varlistentry>
<varlistentry><term>TDEIO::symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<varlistentry><term>TDEIO::symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite, bool showProgressInfo)</term>
<listitem><para>Skapar en symbolisk länk. </para></listitem>
</varlistentry>
@ -1662,7 +1662,7 @@ TDEIO::NetAccess::copy(source, target);
<programlisting>KURL url;
url = ...;
QString tempFile;
TQString tempFile;
if (TDEIO::NetAccess::download(url, tempFile) {
// ladda filen med namnet tempFile
TDEIO::NetAccess::removeTempFile(tempFile);
@ -1698,12 +1698,12 @@ if (TDEIO::NetAccess::download(url, tempFile) {
void FooClass::transferResult(TDEIO::Job *job)
{
QString mimetype;
TQString mimetype;
if (job->error())
job->showErrorDialog();
else {
TDEIO::TransferJob *transferJob = (TDEIO::TransferJob*) job;
QString modified = transferJob->queryMetaData("modified");
TQString modified = transferJob->queryMetaData("modified");
cout &lt;&lt; "Senaste ändring: " &lt;&lt; modified &lt;&lt; endl;
}
</programlisting>
@ -1848,7 +1848,7 @@ int kdemain(int argc, char **argv)
<listitem><para>copy(const KURL &amp;url, const KURL &amp;dest, int permissions, bool overwrite)</para></listitem></varlistentry>
<varlistentry><term>Skapar en symbolisk länk.</term>
<listitem><para>void symlink(const QString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
<listitem><para>void symlink(const TQString &amp;target, const KURL &amp;dest, bool overwrite)</para></listitem></varlistentry>
</variablelist>

@ -18,7 +18,7 @@ dcop `dcop | grep kmdr` KommanderIf
</screen>
<para>Det här antar att du är inne i en &kommander; fil och har tillgång till specialvärdet @pid, som innehåller process-id. Det är i själva verket enklare att ersätta <quote>kmdr-executor-@pid</quote> med @dcopid. Du kan dock använda syntaxen (men förstås utan specialvärden) från kommandoraden eller vilket externt skript som helst för att ändra &kommander;-fönstret. </para>
<para>&kommander; utvecklade den mycket snabbare interna &DCOP;-funktionen. Att använda den från ett annat programfönster (&DCOP; via terminalen är mycket långsamt) är mer komplicerat, eftersom du måste ange mycket information, inklusive anropets prototyp. Anropet ovan skulle bli (observera att @dcopid i själva verket är internt till dialogrutan, men det skulle kunna ersättas med giltigt processid): </para>
<screen>@dcop(@dcopid, KommanderIf, <quote>enableWidget(QString, bool)</quote>, komponent, true)
<screen>@dcop(@dcopid, KommanderIf, <quote>enableWidget(TQString, bool)</quote>, komponent, true)
</screen>
<para>I tidiga versioner av &kommander; använde lokala &DCOP;-anrop inne i skriptspråkstrukturer (som <application>bash</application>) anrop med terminalmetoder. <emphasis>Om du använder intern &DCOP; körs alla &kommander; specialvärden först och därefter körs skriptet.</emphasis> Läs föregående mening igen, eftersom det kommer att ge dig många sorger och bekymmer med en <application>bash</application>-snurra som använder &kommander;-specialvärden. </para>
<para>Det finns ett nytt förenklat sätt att använda &DCOP; inne i &kommander; genom att använda en objektsyntax. Låt oss anta att du vill ändra texten i den grafiska komponenten @Radeditor1. Det skulle se ut så här: </para>
@ -30,15 +30,15 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; för globala variabler</title>
<variablelist>
<varlistentry>
<term>global(QString variabelnamn)</term>
<term>global(TQString variabelnamn)</term>
<listitem>
<para>Returnerar den angivna globala variabelns värde. När ett skript körs från ett fönster i &kommander; upphör alla (icke-globala) variabler som anges i skriptet att existera efter skriptet är färdigt, och är därför inte tillgängliga för andra skriptprocesser eller i en ny instans av den anropande processen. Det globala <quote>omfattningen</quote> betyder att variabeln existerar för alla fönstrets processer ända till fönstret stängs. Du kan ändra variablerna när som helst med ett nytt anrop till <function>@setGlobal</function>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>setGlobal(QString variabelnamn, QString värde)</term>
<term>setGlobal(TQString variabelnamn, TQString värde)</term>
<listitem>
<para>Skapar en variabel som är global i fönsterprocessen och tilldelar värdet till den. Värdet kan hämtas med global(QString variabelnamn) eller tilldelas igen. </para>
<para>Skapar en variabel som är global i fönsterprocessen och tilldelar värdet till den. Värdet kan hämtas med global(TQString variabelnamn) eller tilldelas igen. </para>
</listitem>
</varlistentry>
</variablelist>
@ -50,7 +50,7 @@ dcop `dcop | grep kmdr` KommanderIf
<para>Följande lista är gammal, och finns bara kvar i referenssyfte. Titta i <emphasis>funktionsbläddraren</emphasis> för en fullständig och aktuell referens till alla grafiska komponentfunktioner, som är tillgänglig från alla texteditorfönster i &kommander; genom att klicka på knappen längst ner till vänster. De är nu komponentfunktioner, inte &DCOP;-funktioner, men &DCOP;-funktionerna är publicerade i &DCOP;-gränssnittet <emphasis>KommanderIf</emphasis> som beskrivs ovan. Dialogrutor för att lista och skapa anrop till dessa funktioner är tillgängliga på vår webbplats. </para>
<variablelist>
<varlistentry>
<term>setText(QString text)</term>
<term>setText(TQString text)</term>
<listitem>
<para>Det här tar bort texten som visas i den grafiska komponenten och ersätter den med den angivna texten. </para>
</listitem>
@ -68,7 +68,7 @@ dcop `dcop | grep kmdr` KommanderIf
</listitem>
</varlistentry>
<varlistentry>
<term>setAssociatedText(QString text)</term>
<term>setAssociatedText(TQString text)</term>
<listitem>
<para>Det här tilldelar den förvalda strängen för &kommander; text. Den tilldelas typiskt värdet <quote>@widgetText</quote> för att visa vad som skrivs in i komponenten. Det är inte troligt att du har mycket nytta av det, men om du gör det finns det där. Gäller alla grafiska komponenter som kan innehålla data. </para>
</listitem>
@ -80,7 +80,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; för listrutor och kombinationsrutor</title>
<variablelist>
<varlistentry>
<term>addListItem(QString objekt, int index)</term>
<term>addListItem(TQString objekt, int index)</term>
<listitem>
<para>Lägger till ett objekt i en listruta på angivet index. Listindex börjar på noll. För att lägga till i slutet på listan, använd -1. </para>
</listitem>
@ -92,7 +92,7 @@ dcop `dcop | grep kmdr` KommanderIf
</listitem>
</varlistentry>
<varlistentry>
<term>addUniqueItem(QString objekt)</term>
<term>addUniqueItem(TQString objekt)</term>
<listitem>
<para>addUniqueItem lägger till ett objekt i slutet på listan, men bara om det är unikt. </para>
</listitem>
@ -128,7 +128,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; för kryssrutor och alternativknappar</title>
<variablelist>
<varlistentry>
<term>setChecked(QString komponentnamn, bool markerad)</term>
<term>setChecked(TQString komponentnamn, bool markerad)</term>
<listitem>
<para>Markerar/avmarkerar en kryssruta eller alternativknapp. </para>
</listitem>
@ -140,7 +140,7 @@ dcop `dcop | grep kmdr` KommanderIf
<title>&DCOP; for flikkomponenter</title>
<variablelist>
<varlistentry>
<term>setCurrentTab(QString komponentnamn, int index)</term>
<term>setCurrentTab(TQString komponentnamn, int index)</term>
<listitem>
<para>Väljer fliken med index för flikkomponenter. Index börjar med 0. </para>
</listitem>

@ -31,36 +31,36 @@ class KomLineEdit : public KLineEdit, public KommanderWidget
{
TQ_OBJECT
TQ_PROPERTY(QString populationText READ populationText WRITE setPopulationText DESIGNABLE false)
TQ_PROPERTY(TQString populationText READ populationText WRITE setPopulationText DESIGNABLE false)
TQ_PROPERTY(QStringList associations READ associatedText WRITE setAssociatedText DESIGNABLE false)
TQ_PROPERTY(bool KommanderWidget READ isKommanderWidget)
public:
KomLineEdit(QWidget *a_parent, const char *a_name);
KomLineEdit(TQWidget *a_parent, const char *a_name);
~KomLineEdit();
virtual QString widgetText() const;
virtual TQString widgetText() const;
virtual bool isKommanderWidget() const;
virtual void setAssociatedText(const QStringList&amp;);
virtual QStringList associatedText() const;
virtual QString currentState() const;
virtual TQString currentState() const;
virtual QString populationText() const;
virtual void setPopulationText(const QString&amp;);
virtual TQString populationText() const;
virtual void setPopulationText(const TQString&amp;);
public slots:
virtual void setWidgetText(const QString &amp;);
virtual void setWidgetText(const TQString &amp;);
virtual void populate();
protected:
void showEvent( QShowEvent *e );
signals:
void widgetOpened();
void widgetTextChanged(const QString &amp;);
void widgetTextChanged(const TQString &amp;);
};
</screen>
<para>Det mesta av detta är bara mallkod som du inte behöver bry dig om. De enda två saker du måste försäkra dig om är att filen kommanderwidget.h inkluderas längst upp, och att klassen först härleds från komponenten vi önskar integrera med &kommander; och därefter från KommanderWidget. </para>
<para>Det finns några delar i cpp-filen som är viktiga för varje enskild komponent. </para>
<screen>KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
<screen>KomLineEdit::KomLineEdit(TQWidget *a_parent, const char *a_name)
: KLineEdit(a_parent, a_name), KommanderWidget(this)
{
QStringList states;
@ -70,23 +70,23 @@ signals:
}
</screen>
<para>Vi anger tillstånden komponenten kan ha i konstruktorn. Vår radeditor har ingen form av tillstånd, så vi ger den bara tillståndet <emphasis>default</emphasis>. Om du skapar en komponent som har olika tillstånd, som en kryssruta, kan du ange tre tillstånd <emphasis>unchecked</emphasis>, <emphasis>semichecked</emphasis> och <emphasis>checked</emphasis> här. </para>
<screen>QString KomLineEdit::currentState() const
<screen>TQString KomLineEdit::currentState() const
{
return QString("default");
return TQString("default");
}</screen>
<para>Vi angav tillstånden i konstruktorn ovan, och detta returnerar bara komponentens nuvarande tillstånd. För vår komponent är det alltid <emphasis>default</emphasis>, men du bör lägga till kod här som kontrollerar vilket tillstånd komponenten för närvarande har, och returnerar lämplig sträng här. </para>
<screen>QString KomLineEdit::widgetText() const
<screen>TQString KomLineEdit::widgetText() const
{
return KLineEdit::text();
}
void KomLineEdit::setWidgetText(const QString &amp;a_text)
void KomLineEdit::setWidgetText(const TQString &amp;a_text)
{
KLineEdit::setText(a_text);
emit widgetTextChanged(a_text);
}
</screen>
<para>Detta är de två viktigaste metoderna, där den största delen av koden som utgör funktionen finns. Metoden <emphasis>QString KomLineEdit::widgetText() const</emphasis> returnerar komponenttexten (texten som <emphasis>@widgetText</emphasis> expanderas till i textassociationer). Komponenttexten i vår komponent är helt enkelt texten i radeditorn, så vi returnerar den. På liknande sätt, när komponenttexten ändras, ändrar vi bara texten i radeditorn. Vi skickar signalen <emphasis>widgetTextChanged()</emphasis> efter komponenttexten har ändrats, så att andra komponenter kan får reda på det faktum att komponenten har uppdaterats. </para>
<para>Detta är de två viktigaste metoderna, där den största delen av koden som utgör funktionen finns. Metoden <emphasis>TQString KomLineEdit::widgetText() const</emphasis> returnerar komponenttexten (texten som <emphasis>@widgetText</emphasis> expanderas till i textassociationer). Komponenttexten i vår komponent är helt enkelt texten i radeditorn, så vi returnerar den. På liknande sätt, när komponenttexten ändras, ändrar vi bara texten i radeditorn. Vi skickar signalen <emphasis>widgetTextChanged()</emphasis> efter komponenttexten har ändrats, så att andra komponenter kan får reda på det faktum att komponenten har uppdaterats. </para>
<para>För att lägga till funktioner i komponenten, måste du registrera några funktioner och lägga till kod för att hantera dem. Här är koden som används för att registrera dem. Lägg den i början av cpp-filen, ovanför konstruktorn. </para>
<screen>#include &lt;tdelocale.h&gt; // för i18n
@ -99,16 +99,16 @@ enum Functions {
Function2,
LastFunction
};
KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
KomLineEdit::KomLineEdit(TQWidget *a_parent, const char *a_name)
: KLineEdit(a_parent, a_name), KommanderWidget(this)
{
... // kod som beskrivs ovan
KommanderPlugin::setDefaultGroup(Group::DCOP);
KommanderPlugin::registerFunction(Function1, "function1(QString widget, QString arg1, int arg2)", i18n("Call function1 with two arguments, second is optional."), 2, 3);
KommanderPlugin::registerFunction(function2, "function2(QString widget)", i18n("Get a QString as a result of function2."), 1);
KommanderPlugin::registerFunction(Function1, "function1(TQString widget, TQString arg1, int arg2)", i18n("Call function1 with two arguments, second is optional."), 2, 3);
KommanderPlugin::registerFunction(function2, "function2(TQString widget)", i18n("Get a TQString as a result of function2."), 1);
}
</screen>
<para>Detta registrerar två funktioner: <emphasis>function1 och function2</emphasis> Numren som tilldelas funktionerna (här <emphasis>1160</emphasis> och <emphasis>1161</emphasis>) måste vara unika, och inte användas av några andra insticksprogram eller inne i &kommander;. <emphasis>function1</emphasis> har två argument, ett valfritt, <emphasis>function2</emphasis> har inget argument och returnerar en sträng. Argumentet <emphasis>QString widget</emphasis> i signaturerna anger att funktionerna arbetar med en grafisk komponent, som: <emphasis>KomLineEdit.function1("komponent", 1)</emphasis>. </para>
<para>Detta registrerar två funktioner: <emphasis>function1 och function2</emphasis> Numren som tilldelas funktionerna (här <emphasis>1160</emphasis> och <emphasis>1161</emphasis>) måste vara unika, och inte användas av några andra insticksprogram eller inne i &kommander;. <emphasis>function1</emphasis> har två argument, ett valfritt, <emphasis>function2</emphasis> har inget argument och returnerar en sträng. Argumentet <emphasis>TQString widget</emphasis> i signaturerna anger att funktionerna arbetar med en grafisk komponent, som: <emphasis>KomLineEdit.function1("komponent", 1)</emphasis>. </para>
<para>För att lära &kommander; att komponenten stöder dessa funktioner, lägg till en metod på följande sätt: </para>
<screen>bool KomLineEdit::isFunctionSupported(int f)
{
@ -116,7 +116,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
}
</screen>
<para>Det betyder att KomLineEdit stöder funktionerna ovan, och den vanliga funktionen <emphasis>text</emphasis>. Funktionskoden ska hanteras inne i metoden handeDCOP: </para>
<screen>QString KomLineEdit::handleDCOP(int function, const QStringList&amp; args)
<screen>TQString KomLineEdit::handleDCOP(int function, const QStringList&amp; args)
{
switch (function)
{
@ -132,7 +132,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
default:
return KommanderWidget::handleDCOP(function, args);
}
return QString::null;
return TQString::null;
}
</screen>
<para>Det finns tillfällen då komponenten ska se annorlunda ut i editorn än när den körs, vilket är fallet för skriptobjekt, om-dialogruta, etc. Den vanliga lösningen är att visa en QLabel istället för komponenten. För att göra det måste komponenten härledas från QLabel, och använda följande i konstruktorn: </para>
@ -147,7 +147,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
setHidden(true);
</screen>
<para>Du kan skapa själva komponenten (om en komponent över huvud taget behövs, kanske "komponenten" bara tillhandahåller funktioner för att t.ex. komma åt en databas) i en av dina funktioner, som i funktionen <emphasis>execute</emphasis>. Här är ett exempel från komponenten om-dialogruta: </para>
<screen>QString AboutDialog::handleDCOP(int function, const QStringList&amp; args)
<screen>TQString AboutDialog::handleDCOP(int function, const QStringList&amp; args)
{
switch (function) {
...
@ -184,7 +184,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name)
{
public:
MyKomPlugin();
virtual QWidget *create( const QString &amp;className, QWidget *parent = 0, const char *name = 0 );
virtual TQWidget *create( const TQString &amp;className, TQWidget *parent = 0, const char *name = 0 );
};
</screen>
<para>Därefter skapar vi delklassen KommanderPlugin som kallas <emphasis>MyKomPlugin</emphasis>. Klassen har helt enkelt en konstruktor och den överskridna metoden create. </para>
@ -196,7 +196,7 @@ public:
</screen>
<para>I insticksprogrammets konstruktor, anropar vi <emphasis>addWidget()</emphasis>för varje komponent vi vill tillhandahålla i insticksprogrammet. <emphasis>addWidget()</emphasis> har sex argument, men bara de fyra första krävs. I ordning är argumenten, komponentklassens namn, grupp, verktygstips, en ikonuppsättning för ikonen som används i editorns verktygsrad, vad är det här-information, och en Boolean som anger om komponenten är omgivande komponent för andra komponenter eller inte. Informationen används av editorn när komponenten grupperas i menyer, tillhandahåller hjälpinformation, etc. </para>
<para>När det gäller ikonen, så laddar exemplet ovan en ikon av medelstorlek som kallas <emphasis>iconname</emphasis> från &kde;:s vanliga ikonplats. </para>
<screen>QWidget *MyKomPlugin::create( const QString &amp;className, QWidget *parent, const char *name )
<screen>TQWidget *MyKomPlugin::create( const TQString &amp;className, TQWidget *parent, const char *name )
{
if( className == "KomLineEdit" )
return new KomLineEdit( parent, name );
@ -251,7 +251,7 @@ void WidgetDatabase::setupDataBase( int id )
<screen>...
#include "mywidget.h"
...
QWidget *WidgetFactory::createWidget( const QString &amp;className, QWidget *parent, const char *name, bool init,
TQWidget *WidgetFactory::createWidget( const TQString &amp;className, TQWidget *parent, const char *name, bool init,
const QRect *r, Qt::Orientation orient )
{
...

@ -177,7 +177,7 @@ debug(resultat)</screen> Inne i skriptet kan det se ut så här:<screen>var = st
return(var)</screen> Nu får du ett returvärde i meddelandeloggen via <emphasis>standardfelutmatningen</emphasis> som är <emphasis>HEJ ALLIHOP</emphasis>. </para>
<para>Att ta emot en signal som är ansluten till en skriptslot fungerar på samma sätt. <emphasis>Self.Item(0)</emphasis> är parameter ett och så vidare. Du kan hämta antal argument som skickas via <emphasis>Skriptobjekt.count</emphasis>. </para>
<para>Kommandoradsparametrar tillåter namngivna eller namnlösa argument. Namnlösa ser ut som <screen>kmdr-executor mitt_program.kmdr 100 röd</screen> Här blir _ARG1 = 100 och _ARG2 = röd. En konstighet är att när strängar med mellanslag skickas som argument måste de citeras. Används dialogkommandot blir saker och ting mer komplicerade, eftersom hela argumentsträngen måste skickas som en sträng, alltså inom citationstecken. <screen>dialog("min_dialog.kmdr", 100+" \"Hej allihop\"")</screen> Det returnerar <emphasis>_ARG1 = 100</emphasis> och <emphasis>_ARG2 = Hej allihop</emphasis>. Utan skyddade citationstecken hade du fått <emphasis>_ARG2 = Hej</emphasis> och <emphasis>_ARG3 = allihop</emphasis>. Att använda namngivna parametrar är rätt trevligt, och potentiellt mindre förvirrande. <screen>dialog("min_dialog.kmdr", "xantal=100 xcitat=Hej allihop")</screen> Nu kan du komma åt dem med de globala variablerna <emphasis>_xantal</emphasis> och <emphasis>_xcitat</emphasis>. </para>
<para>DCOP kan vara komplicerat, vilket är orsaken till att vi rekommenderar att använda de verktyg vi utvecklar för att göra det möjligt att skapa DCOP för &kommander;-fjärrdialogrutor med något som liknar en funktionsbläddrare. Här är ett exempel på ett DCOP-anrop som skickas från en dialogruta öppnad av ett &kommander;-fönster. Eftersom den vet vem som skapat den, kan den skicka tillbaka information medan den är öppen, och fritt komma åt alla fönstrets funktioner med undantag av slots. Det kan naturligtvis göras internt med ett skript som kan anropas externt, så i praktiken finns det inga begränsningar av vad som är möjligt. <screen>dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(QString,QString)", "StatusBar8", "Hej")</screen> Låt oss titta på detta en del i taget. Först av allt lägger vi till <emphasis>parentPid</emphasis> to "kmdr-executor-" eftersom vi inte antar att ett &kommander;-fönster gjorde anropet. Du skulle kunna använda det med Quanta, Kspread eller vad som helst. Därefter adresserar vi <emphasis>KommanderIf</emphasis>, som är ett <emphasis>bra</emphasis> gränssnitt för slutanvändare som har städats. Vi hoppas att fler program till sist börjar använda ett bra gränssnitt för integrering när KDE går från DCOP till DBUS i KDE4. Nästa parameter, <emphasis>"setText(QString,QString)"</emphasis>, är viktig eftersom den anger <emphasis>prototyp</emphasis> för tillåtna parametrar. Annars skulle inte &kommander; kunna validera anropet. Utan definitionen av DCOP-anropet som används får du ett fel. Återstående parametrar är förstås de som skickas. Vi rekommenderar att du tittar på program med <command>kdcop</command> för att se hur det fungerar, och övar på att skicka DCOP-anrop från skalet för att få rätt syntax. </para>
<para>DCOP kan vara komplicerat, vilket är orsaken till att vi rekommenderar att använda de verktyg vi utvecklar för att göra det möjligt att skapa DCOP för &kommander;-fjärrdialogrutor med något som liknar en funktionsbläddrare. Här är ett exempel på ett DCOP-anrop som skickas från en dialogruta öppnad av ett &kommander;-fönster. Eftersom den vet vem som skapat den, kan den skicka tillbaka information medan den är öppen, och fritt komma åt alla fönstrets funktioner med undantag av slots. Det kan naturligtvis göras internt med ett skript som kan anropas externt, så i praktiken finns det inga begränsningar av vad som är möjligt. <screen>dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(TQString,TQString)", "StatusBar8", "Hej")</screen> Låt oss titta på detta en del i taget. Först av allt lägger vi till <emphasis>parentPid</emphasis> to "kmdr-executor-" eftersom vi inte antar att ett &kommander;-fönster gjorde anropet. Du skulle kunna använda det med Quanta, Kspread eller vad som helst. Därefter adresserar vi <emphasis>KommanderIf</emphasis>, som är ett <emphasis>bra</emphasis> gränssnitt för slutanvändare som har städats. Vi hoppas att fler program till sist börjar använda ett bra gränssnitt för integrering när KDE går från DCOP till DBUS i KDE4. Nästa parameter, <emphasis>"setText(TQString,TQString)"</emphasis>, är viktig eftersom den anger <emphasis>prototyp</emphasis> för tillåtna parametrar. Annars skulle inte &kommander; kunna validera anropet. Utan definitionen av DCOP-anropet som används får du ett fel. Återstående parametrar är förstås de som skickas. Vi rekommenderar att du tittar på program med <command>kdcop</command> för att se hur det fungerar, och övar på att skicka DCOP-anrop från skalet för att få rätt syntax. </para>
</sect2>
</sect1>
<!--
@ -333,7 +333,7 @@ end
<listitem>
<para><command>createWidget(<parameter>komponentnamn</parameter>, <parameter>komponenttyp</parameter>, <parameter>skapare</parameter>)</command> - skapar en ny grafisk komponent. Därefter kan du till exempel lägga till den i en tabell eller verktygslåda, och använda <command>min_komponent.show(true)</command> för att göra den synlig. Om du lägger till en ny grafisk komponent i formuläret, måste du ta hänsyn till layout. &kommander; skapar inte en layout i farten, eller justerar positioner bildpunkt för bildpunkt (i de flesta fall). Det är förvirrande till och med vid utveckling med C++. Vi rekommenderar att du använder en gruppruta och skapar en layout i dialogrutan för att få bäst kontroll. </para></listitem>
<listitem>
<para><command>connect(<parameter>avsändare</parameter>, <parameter>signal</parameter>, <parameter>mottagare</parameter>, <parameter>slot</parameter>)</command> - anslut en signal i en grafisk komponent till en slot. Se anslutningsdialogrutan och välj liknande komponenter för att se möjligheterna. Om en signal till exempel ser ut som <command>execute(const QString&amp;)</command> är det exakt vad som måste finnas här inom citationstecken. </para></listitem>
<para><command>connect(<parameter>avsändare</parameter>, <parameter>signal</parameter>, <parameter>mottagare</parameter>, <parameter>slot</parameter>)</command> - anslut en signal i en grafisk komponent till en slot. Se anslutningsdialogrutan och välj liknande komponenter för att se möjligheterna. Om en signal till exempel ser ut som <command>execute(const TQString&amp;)</command> är det exakt vad som måste finnas här inom citationstecken. </para></listitem>
<listitem>
<para><command>disconnect(<parameter>avsändare</parameter>, <parameter>signal</parameter>, <parameter>mottagare</parameter>, <parameter>slot</parameter>)</command> - ta bort anslutningen som anges ovan. Återigen är exakt riktig syntax helt nödvändig. </para></listitem>
<listitem>

@ -61,7 +61,7 @@
<title>Signaler och slots</title>
<para>En av de många användbara funktionerna som ärvdes av Qt Designer är signaler och slots. Naturligtvis har gränssnittet konstruerats om i ett försök att göra det lämpligt för &kommander;. Signaler och slots hanterar styrning av interna händelser i Qt- och KDE-program. Vi försöker anpassa det så att du inte behöver kunna skillnaden mellan datatyper i C++, men om du använder de nya funktionerna för att skapa anslutningar i farten är det praktiskt att kunna kopiera informationen från anslutningsverktyget. Låt oss ta en titt på vad det betyder. Någonting inträffar i en av dina komponenter. Den kanske tar emot ett klick, ett dubbelklick, får sitt värde ändrat, något markeras, eller en meny begärs. Det är bara några av de möjliga händelser som skulle göra att en signal skickas. Du kanske vill ändra listan i en listruta om en ny markering görs i en kombinationsruta. Det är en användbar funktion i ett avancerat program, och det enda sättet att göra det utan att därefter behöva klicka på en knapp, är att ha en signal ansluten till en slot. En sådan slot kan vara i ett skript eller en knapp. När en signal tas emot ser denna slot till att göra vad den blev ombedd. Det finns ett verktyg för att redigera anslutningarna. Var uppmärksam när du gör detta, eftersom det finns ett stort antal ärvda signaler och slots. Att tala om för ett skript, som är osynligt när dialorgutan körs, att justera sin storlek när du istället ville köra det, får dig säkert att undra vad som hände. </para>
<para>Du kan öppna anslutningsverktyget genom att högerklicka var som helst i dialogrutan och välja det i menyn. Klicka på menyn så ser du en lista med gjorda anslutningar längst ner. Ovanför visas två listor med signaler och slots, och ovanför dem respektive sändare och mottagare som är vald. Ett enkelt sätt att skapa anslutningar är visuellt. Titta i verktygsraden eller i verktygsmenyn. Där finns tre objekt i en grupp. En pekare, anslutningar av signaler och slots, och flikordningen eller komponenterna. För de nyfikna: att välja den ställer in anslutningsläget. Klicka på komponenten för att skicka signalen och dra den till komponenten som ska ta emot den i en slot. När du gör det ser du en linje och en indikering om var du släpper på komponenten under musen. Editorns statusrad talar om för dig vad som kommer att anslutas. </para>
<note><para>I &kommander; version 1.3 finns funktionen connect() som låter dig ansluta signaler och slots i farten. Det är användbart om du just har använt createWidget. Naturligtvis kan du inte använda dialogrutan för något som &kommander; ännu inte vet existerar. Tyvärr finns det för många kombinationer för att lista, så du måste skriva in signaler och slots. <emphasis>De måste skrivas exakt rätt, annars fungerar de inte.</emphasis> Här är anslutningsverktyget återigen praktiskt. Öppna det och välj två komponenter som motsvarar de du vill ansluta, och läs av anslutningsinformationen. Om den lyder <command>execute(const QString&amp;)</command>, är det exakt vad du måste skriva in.</para></note>
<note><para>I &kommander; version 1.3 finns funktionen connect() som låter dig ansluta signaler och slots i farten. Det är användbart om du just har använt createWidget. Naturligtvis kan du inte använda dialogrutan för något som &kommander; ännu inte vet existerar. Tyvärr finns det för många kombinationer för att lista, så du måste skriva in signaler och slots. <emphasis>De måste skrivas exakt rätt, annars fungerar de inte.</emphasis> Här är anslutningsverktyget återigen praktiskt. Öppna det och välj två komponenter som motsvarar de du vill ansluta, och läs av anslutningsinformationen. Om den lyder <command>execute(const TQString&amp;)</command>, är det exakt vad du måste skriva in.</para></note>
</sect2>
<sect2 id="slot-functions">

@ -47,8 +47,8 @@ msgid ""
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"Det här är den aktuella färgen i hexadecimal representation, som du kan "
"använda i HTML eller som namn till TQColor. Rektangelns bakgrund visar "
"färgen för bildpunkten inuti den lilla rutan vid slutet av radmarkören."
"använda i HTML eller som namn till TQColor. Rektangelns bakgrund visar färgen "
"för bildpunkten inuti den lilla rutan vid slutet av radmarkören."
#: klineal.cpp:147
msgid "KRuler"

@ -4004,5 +4004,5 @@ msgstr ""
#~ msgid "Enables/disables the statusbar"
#~ msgstr "Aktiverar/inaktiverar statusraden"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -29191,19 +29191,19 @@ msgstr "Pålitligt SSL-certifikat"
#~ msgid "Error compiling the regular expression."
#~ msgstr "Fel vid kompilering av reguljärt uttryck."
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4-stil (#include <QWidget>)"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4-stil (#include <TQWidget>)"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Infoga basklassen som din nya klass kommer att härledas från. Om du har "
#~ "markerat 'skapa en QWidget-barnklass',kommer den nya klassen att härledas "
#~ "från QWidget. Om ingen basklass namnges, så har den nya klassen ingen "
#~ "markerat 'skapa en TQWidget-barnklass',kommer den nya klassen att härledas "
#~ "från TQWidget. Om ingen basklass namnges, så har den nya klassen ingen "
#~ "föräldraklass. Du kan också använda mallklasser här (som Basklass<int,"
#~ "int>)."

@ -4207,5 +4207,5 @@ msgstr ""
#~ msgid "Delete Association"
#~ msgstr "தொடர்பை நீக்கு"
#~ msgid "QString"
#~ msgstr "Qஉரை"
#~ msgid "TQString"
#~ msgstr "TQஉரை"

@ -31567,8 +31567,8 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""

@ -4090,5 +4090,5 @@ msgstr ""
#~ msgid "UMLRolePropertiesBase"
#~ msgstr "Хусусиятҳои нақш"
#~ msgid "QString"
#~ msgstr "Сатр (QString)"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -25494,9 +25494,9 @@ msgid ""
msgstr ""
"Вставьте здесь базовый класс, от которого будет наследоваться новый. Если вы "
"выбрали 'Создать класс, дочерний от TQWidget', то новый класс будет "
"унаследован от TQWidget. Если не было названо базового класса, то новый "
"класс не будет иметь родительского класса. Вы так же можете использовать "
"здесь шаблоны, как BaseClass<int, int>"
"унаследован от TQWidget. Если не было названо базового класса, то новый класс "
"не будет иметь родительского класса. Вы так же можете использовать здесь "
"шаблоны, как BaseClass<int, int>"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -32101,14 +32101,14 @@ msgstr ""
#, fuzzy
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Вставьте здесь базовый класс, от которого будет наследоваться новый. Если "
#~ "вы выбрали 'Создать класс, дочерний от QWidget', то новый класс будет "
#~ "унаследован от QWidget. Если не было названо базового класса, то новый "
#~ "вы выбрали 'Создать класс, дочерний от TQWidget', то новый класс будет "
#~ "унаследован от TQWidget. Если не было названо базового класса, то новый "
#~ "класс не будет иметь родительского класса. Вы так же можете использовать "
#~ "здесь шаблоны, как BaseClass<int, int>"

@ -4074,6 +4074,5 @@ msgstr ""
#~ msgid "UML Diagrams"
#~ msgstr "UML Diyagramları"
#, fuzzy
#~ msgid "QString"
#~ msgstr "string"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -23637,11 +23637,10 @@ msgid ""
"TQWidget. If no base class is named, the new class will not have a parent "
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"Yeni sınıfınızın türetileceği temel sınıfın adını girin. Eğer 'TQWidget "
"çocuk sınıf üret' seçeneğini seçtiyseniz, yeni sınıf TQWidget'ten "
"türetilecektir. Temel sınıf adı girilmediyse yeni sınıfın ebeveyn sınıfı "
"olmayacaktır. Burada 'template' sınıflar da kullanılabilir. (Ör. BaseClass "
"<int, int>)"
"Yeni sınıfınızın türetileceği temel sınıfın adını girin. Eğer 'TQWidget çocuk "
"sınıf üret' seçeneğini seçtiyseniz, yeni sınıf TQWidget'ten türetilecektir. "
"Temel sınıf adı girilmediyse yeni sınıfın ebeveyn sınıfı olmayacaktır. "
"Burada 'template' sınıflar da kullanılabilir. (Ör. BaseClass <int, int>)"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -28819,13 +28818,13 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "Yeni sınıfınızın türetileceği temel sınıfın adını girin. Eğer 'QWidget "
#~ "çocuk sınıf üret' seçeneğini seçtiyseniz, yeni sınıf QWidget'ten "
#~ "Yeni sınıfınızın türetileceği temel sınıfın adını girin. Eğer 'TQWidget "
#~ "çocuk sınıf üret' seçeneğini seçtiyseniz, yeni sınıf TQWidget'ten "
#~ "türetilecektir. Temel sınıf adı girilmediyse yeni sınıfın ebeveyn sınıfı "
#~ "olmayacaktır. Burada 'template' sınıflar da kullanılabilir. (Ör. "
#~ "BaseClass <int, int>)"

@ -3959,5 +3959,5 @@ msgstr ""
#~ msgid "&Zoom"
#~ msgstr "Масштаб:"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -3945,5 +3945,5 @@ msgstr "<p>使用代码菜单中的新建类向导可以创建和设置一个新
#~ msgid "No Language Selected"
#~ msgstr "语言没有选择"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -28017,12 +28017,12 @@ msgstr ""
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "指明您的新类要从那一个基类派生。如果您选择了“生成 QWidget 的子类”,新类就"
#~ "指明您的新类要从那一个基类派生。如果您选择了“生成 TQWidget 的子类”,新类就"
#~ "从 QWidge t派生。如果没有指定基类则新类就没有父类。在此您也可以使用模板"
#~ "类(比如 BaseClass<int, int>)。"

@ -45,8 +45,8 @@ msgid ""
"it in HTML or as a TQColor name. The rectangles background shows the color "
"of the pixel inside the little square at the end of the line cursor."
msgstr ""
"這是目前用十六進位 RGB 表示顏色,您可以在超文字連結或 TQColor 名稱上使用。矩"
"背景顯示游標末行小正方形內的像素顏色。"
"這是目前用十六進位 RGB 表示顏色,您可以在超文字連結或 TQColor 名稱上使用。矩"
"背景顯示游標末行小正方形內的像素顏色。"
#: klineal.cpp:147
msgid "KRuler"

@ -3938,5 +3938,5 @@ msgstr "<p>使用代碼選單中的新增類別精靈可以建立和設定一個
#~ msgid "Enables/disables the statusbar"
#~ msgstr "開啟/關閉狀態列"
#~ msgid "QString"
#~ msgstr "QString"
#~ msgid "TQString"
#~ msgstr "TQString"

@ -6905,8 +6905,8 @@ msgid ""
"Multiple inheritance requires TQObject derivative to be first and unique in "
"base class list."
msgstr ""
"多重繼承需要將 TQObject 的衍生類別放在基礎類別列表中的第一個,也是唯一的一個"
"別。"
"多重繼承需要將 TQObject 的衍生類別放在基礎類別列表中的第一個,也是唯一的一個"
"別。"
#: languages/cpp/cppnewclassdlg.cpp:851 languages/cpp/cppnewclassdlg.cpp:854
#: languages/cpp/cppnewclassdlg.cpp:1010 languages/cpp/cppnewclassdlg.cpp:1013
@ -22721,8 +22721,8 @@ msgid ""
"class. You can also use template classes here (like BaseClass<int, int>)"
msgstr ""
"在此插入您的新類別要從哪個基礎類別衍生出來。如果您勾選了「產生 TQWidget 子類"
"別」,則新的類別就會由 TQWidget 衍生。如果沒有指定基礎類別,新的類別就不會有"
"類別。您也可以在此使用樣本類別(例如 BaseClass<int, int>)。"
"別」,則新的類別就會由 TQWidget 衍生。如果沒有指定基礎類別,新的類別就不會有"
"類別。您也可以在此使用樣本類別(例如 BaseClass<int, int>)。"
#: languages/cpp/cppnewclassdlgbase.ui:489
#, no-c-format
@ -28198,18 +28198,18 @@ msgstr "SSL 認證信任"
#~ msgid "Error compiling the regular expression."
#~ msgstr "正規表示式編譯錯誤。"
#~ msgid "Qt &4 style (#include <QWidget>)"
#~ msgstr "Qt &4 方式(#include <QWidget>"
#~ msgid "Qt &4 style (#include <TQWidget>)"
#~ msgstr "Qt &4 方式(#include <TQWidget>"
#~ msgid ""
#~ "Insert the base class which your new class will be derived from. If you "
#~ "have checked 'Generate QWidget child class' the new class will be derived "
#~ "from QWidget. If no base class is named, the new class will not have a "
#~ "have checked 'Generate TQWidget child class' the new class will be derived "
#~ "from TQWidget. If no base class is named, the new class will not have a "
#~ "parent class. You can also use template classes here (like BaseClass<int, "
#~ "int>)"
#~ msgstr ""
#~ "在此插入您的新類別要從哪個基礎類別衍生出來。如果您勾選了「產生 QWidget 子"
#~ "類別」,則新的類別就會由 QWidget 衍生。如果沒有指定基礎類別,新的類別就不"
#~ "在此插入您的新類別要從哪個基礎類別衍生出來。如果您勾選了「產生 TQWidget 子"
#~ "類別」,則新的類別就會由 TQWidget 衍生。如果沒有指定基礎類別,新的類別就不"
#~ "會有父類別。您也可以在此使用樣本類別(例如 BaseClass<int, int>)。"
#, fuzzy

Loading…
Cancel
Save