From 241e0082f7b9ccadaeed0ef43a1c9ebb9b4fe840 Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Fri, 13 Oct 2023 18:02:18 +0900 Subject: Replace QObject, QWidget, QImage, QPair, QRgb, QColor, QChar, QString, QIODevice with TQ* version Signed-off-by: Michele Calgaro --- tde-i18n-sv/docs/tdewebdev/kommander/dcop.docbook | 20 ++++----- .../docs/tdewebdev/kommander/extending.docbook | 48 +++++++++++----------- .../docs/tdewebdev/kommander/parser.docbook | 4 +- .../docs/tdewebdev/kommander/tutorials.docbook | 2 +- 4 files changed, 37 insertions(+), 37 deletions(-) (limited to 'tde-i18n-sv/docs/tdewebdev') diff --git a/tde-i18n-sv/docs/tdewebdev/kommander/dcop.docbook b/tde-i18n-sv/docs/tdewebdev/kommander/dcop.docbook index 3835188fc41..af3086639ae 100644 --- a/tde-i18n-sv/docs/tdewebdev/kommander/dcop.docbook +++ b/tde-i18n-sv/docs/tdewebdev/kommander/dcop.docbook @@ -18,7 +18,7 @@ dcop `dcop | grep kmdr` KommanderIf 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 kmdr-executor-@pid 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. &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): -@dcop(@dcopid, KommanderIf, enableWidget(QString, bool), komponent, true) +@dcop(@dcopid, KommanderIf, enableWidget(TQString, bool), komponent, true) I tidiga versioner av &kommander; använde lokala &DCOP;-anrop inne i skriptspråkstrukturer (som bash) anrop med terminalmetoder. Om du använder intern &DCOP; körs alla &kommander; specialvärden först och därefter körs skriptet. Läs föregående mening igen, eftersom det kommer att ge dig många sorger och bekymmer med en bash-snurra som använder &kommander;-specialvärden. 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: @@ -30,15 +30,15 @@ dcop `dcop | grep kmdr` KommanderIf &DCOP; för globala variabler -global(QString variabelnamn) +global(TQString variabelnamn) 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 omfattningen 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 @setGlobal. -setGlobal(QString variabelnamn, QString värde) +setGlobal(TQString variabelnamn, TQString värde) -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. +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. @@ -50,7 +50,7 @@ dcop `dcop | grep kmdr` KommanderIf Följande lista är gammal, och finns bara kvar i referenssyfte. Titta i funktionsbläddraren 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 KommanderIf som beskrivs ovan. Dialogrutor för att lista och skapa anrop till dessa funktioner är tillgängliga på vår webbplats. -setText(QString text) +setText(TQString text) Det här tar bort texten som visas i den grafiska komponenten och ersätter den med den angivna texten. @@ -68,7 +68,7 @@ dcop `dcop | grep kmdr` KommanderIf -setAssociatedText(QString text) +setAssociatedText(TQString text) Det här tilldelar den förvalda strängen för &kommander; text. Den tilldelas typiskt värdet @widgetText 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. @@ -80,7 +80,7 @@ dcop `dcop | grep kmdr` KommanderIf &DCOP; för listrutor och kombinationsrutor -addListItem(QString objekt, int index) +addListItem(TQString objekt, int index) 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. @@ -92,7 +92,7 @@ dcop `dcop | grep kmdr` KommanderIf -addUniqueItem(QString objekt) +addUniqueItem(TQString objekt) addUniqueItem lägger till ett objekt i slutet på listan, men bara om det är unikt. @@ -128,7 +128,7 @@ dcop `dcop | grep kmdr` KommanderIf &DCOP; för kryssrutor och alternativknappar -setChecked(QString komponentnamn, bool markerad) +setChecked(TQString komponentnamn, bool markerad) Markerar/avmarkerar en kryssruta eller alternativknapp. @@ -140,7 +140,7 @@ dcop `dcop | grep kmdr` KommanderIf &DCOP; for flikkomponenter -setCurrentTab(QString komponentnamn, int index) +setCurrentTab(TQString komponentnamn, int index) Väljer fliken med index för flikkomponenter. Index börjar med 0. diff --git a/tde-i18n-sv/docs/tdewebdev/kommander/extending.docbook b/tde-i18n-sv/docs/tdewebdev/kommander/extending.docbook index 8a0604eff06..8e3978fffac 100644 --- a/tde-i18n-sv/docs/tdewebdev/kommander/extending.docbook +++ b/tde-i18n-sv/docs/tdewebdev/kommander/extending.docbook @@ -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&); virtual QStringList associatedText() const; - virtual QString currentState() const; + virtual TQString currentState() const; - virtual QString populationText() const; - virtual void setPopulationText(const QString&); + virtual TQString populationText() const; + virtual void setPopulationText(const TQString&); public slots: - virtual void setWidgetText(const QString &); + virtual void setWidgetText(const TQString &); virtual void populate(); protected: void showEvent( QShowEvent *e ); signals: void widgetOpened(); - void widgetTextChanged(const QString &); + void widgetTextChanged(const TQString &); }; 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. Det finns några delar i cpp-filen som är viktiga för varje enskild komponent. -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) { QStringList states; @@ -70,23 +70,23 @@ signals: } 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 default. Om du skapar en komponent som har olika tillstånd, som en kryssruta, kan du ange tre tillstånd unchecked, semichecked och checked här. -QString KomLineEdit::currentState() const +TQString KomLineEdit::currentState() const { - return QString("default"); + return TQString("default"); } Vi angav tillstånden i konstruktorn ovan, och detta returnerar bara komponentens nuvarande tillstånd. För vår komponent är det alltid default, 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. -QString KomLineEdit::widgetText() const +TQString KomLineEdit::widgetText() const { return KLineEdit::text(); } -void KomLineEdit::setWidgetText(const QString &a_text) +void KomLineEdit::setWidgetText(const TQString &a_text) { KLineEdit::setText(a_text); emit widgetTextChanged(a_text); } -Detta är de två viktigaste metoderna, där den största delen av koden som utgör funktionen finns. Metoden QString KomLineEdit::widgetText() const returnerar komponenttexten (texten som @widgetText 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 widgetTextChanged() efter komponenttexten har ändrats, så att andra komponenter kan får reda på det faktum att komponenten har uppdaterats. +Detta är de två viktigaste metoderna, där den största delen av koden som utgör funktionen finns. Metoden TQString KomLineEdit::widgetText() const returnerar komponenttexten (texten som @widgetText 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 widgetTextChanged() efter komponenttexten har ändrats, så att andra komponenter kan får reda på det faktum att komponenten har uppdaterats. 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. #include <tdelocale.h> // 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); } -Detta registrerar två funktioner: function1 och function2 Numren som tilldelas funktionerna (här 1160 och 1161) måste vara unika, och inte användas av några andra insticksprogram eller inne i &kommander;. function1 har två argument, ett valfritt, function2 har inget argument och returnerar en sträng. Argumentet QString widget i signaturerna anger att funktionerna arbetar med en grafisk komponent, som: KomLineEdit.function1("komponent", 1). +Detta registrerar två funktioner: function1 och function2 Numren som tilldelas funktionerna (här 1160 och 1161) måste vara unika, och inte användas av några andra insticksprogram eller inne i &kommander;. function1 har två argument, ett valfritt, function2 har inget argument och returnerar en sträng. Argumentet TQString widget i signaturerna anger att funktionerna arbetar med en grafisk komponent, som: KomLineEdit.function1("komponent", 1). För att lära &kommander; att komponenten stöder dessa funktioner, lägg till en metod på följande sätt: bool KomLineEdit::isFunctionSupported(int f) { @@ -116,7 +116,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name) } Det betyder att KomLineEdit stöder funktionerna ovan, och den vanliga funktionen text. Funktionskoden ska hanteras inne i metoden handeDCOP: -QString KomLineEdit::handleDCOP(int function, const QStringList& args) +TQString KomLineEdit::handleDCOP(int function, const QStringList& 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; } 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: @@ -147,7 +147,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name) setHidden(true); 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 execute. Här är ett exempel från komponenten om-dialogruta: -QString AboutDialog::handleDCOP(int function, const QStringList& args) +TQString AboutDialog::handleDCOP(int function, const QStringList& args) { switch (function) { ... @@ -184,7 +184,7 @@ KomLineEdit::KomLineEdit(QWidget *a_parent, const char *a_name) { public: MyKomPlugin(); - virtual QWidget *create( const QString &className, QWidget *parent = 0, const char *name = 0 ); + virtual TQWidget *create( const TQString &className, TQWidget *parent = 0, const char *name = 0 ); }; Därefter skapar vi delklassen KommanderPlugin som kallas MyKomPlugin. Klassen har helt enkelt en konstruktor och den överskridna metoden create. @@ -196,7 +196,7 @@ public: I insticksprogrammets konstruktor, anropar vi addWidget()för varje komponent vi vill tillhandahålla i insticksprogrammet. addWidget() 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. När det gäller ikonen, så laddar exemplet ovan en ikon av medelstorlek som kallas iconname från &kde;:s vanliga ikonplats. -QWidget *MyKomPlugin::create( const QString &className, QWidget *parent, const char *name ) +TQWidget *MyKomPlugin::create( const TQString &className, TQWidget *parent, const char *name ) { if( className == "KomLineEdit" ) return new KomLineEdit( parent, name ); @@ -251,7 +251,7 @@ void WidgetDatabase::setupDataBase( int id ) ... #include "mywidget.h" ... -QWidget *WidgetFactory::createWidget( const QString &className, QWidget *parent, const char *name, bool init, +TQWidget *WidgetFactory::createWidget( const TQString &className, TQWidget *parent, const char *name, bool init, const QRect *r, Qt::Orientation orient ) { ... diff --git a/tde-i18n-sv/docs/tdewebdev/kommander/parser.docbook b/tde-i18n-sv/docs/tdewebdev/kommander/parser.docbook index b9916f383f6..a600be821fb 100644 --- a/tde-i18n-sv/docs/tdewebdev/kommander/parser.docbook +++ b/tde-i18n-sv/docs/tdewebdev/kommander/parser.docbook @@ -177,7 +177,7 @@ debug(resultat) Inne i skriptet kan det se ut så här:var = st return(var) Nu får du ett returvärde i meddelandeloggen via standardfelutmatningen som är HEJ ALLIHOP. Att ta emot en signal som är ansluten till en skriptslot fungerar på samma sätt. Self.Item(0) är parameter ett och så vidare. Du kan hämta antal argument som skickas via Skriptobjekt.count. Kommandoradsparametrar tillåter namngivna eller namnlösa argument. Namnlösa ser ut som kmdr-executor mitt_program.kmdr 100 röd 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. dialog("min_dialog.kmdr", 100+" \"Hej allihop\"") Det returnerar _ARG1 = 100 och _ARG2 = Hej allihop. Utan skyddade citationstecken hade du fått _ARG2 = Hej och _ARG3 = allihop. Att använda namngivna parametrar är rätt trevligt, och potentiellt mindre förvirrande. dialog("min_dialog.kmdr", "xantal=100 xcitat=Hej allihop") Nu kan du komma åt dem med de globala variablerna _xantal och _xcitat. -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. dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(QString,QString)", "StatusBar8", "Hej") Låt oss titta på detta en del i taget. Först av allt lägger vi till parentPid 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 KommanderIf, som är ett bra 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, "setText(QString,QString)", är viktig eftersom den anger prototyp 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 kdcop för att se hur det fungerar, och övar på att skicka DCOP-anrop från skalet för att få rätt syntax. +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. dcop("kmdr-executor-"+parentPid, "KommanderIf", "setText(TQString,TQString)", "StatusBar8", "Hej") Låt oss titta på detta en del i taget. Först av allt lägger vi till parentPid 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 KommanderIf, som är ett bra 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, "setText(TQString,TQString)", är viktig eftersom den anger prototyp 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 kdcop för att se hur det fungerar, och övar på att skicka DCOP-anrop från skalet för att få rätt syntax.