-rw-r--r-- | core/apps/embeddedkonsole/MyPty.cpp | 7 | ||||
-rw-r--r-- | core/apps/embeddedkonsole/konsole.cpp | 21 | ||||
-rw-r--r-- | core/apps/embeddedkonsole/konsole.h | 6 | ||||
-rw-r--r-- | core/apps/embeddedkonsole/session.h | 2 |
4 files changed, 17 insertions, 19 deletions
diff --git a/core/apps/embeddedkonsole/MyPty.cpp b/core/apps/embeddedkonsole/MyPty.cpp index e7d8274..5a8519a 100644 --- a/core/apps/embeddedkonsole/MyPty.cpp +++ b/core/apps/embeddedkonsole/MyPty.cpp @@ -66,33 +66,32 @@ #include <qfileinfo.h> #include <qapplication.h> #include <qsocketnotifier.h> #include <qstring.h> #include <stdlib.h> #include <stdio.h> #include <signal.h> #include <fcntl.h> #include <unistd.h> #include <termios.h> #include <sys/types.h> #include <sys/ioctl.h> #include <sys/wait.h> -#undef HAVE_OPENPTY #ifdef HAVE_OPENPTY #include <pty.h> #endif #include "MyPty.h" #undef VERBOSE_DEBUG /* -------------------------------------------------------------------------- */ /*! Informs the client program about the actual size of the window. */ @@ -247,44 +246,44 @@ MyPty::~MyPty() donePty(); } /*! sends len bytes through the line */ void MyPty::send_bytes(const char* s, int len) { #ifdef VERBOSE_DEBUG // verbose debug printf("sending bytes:\n"); for (int i = 0; i < len; i++) printf("%c", s[i]); printf("\n"); #endif - ::write(fd, s, len); + ::write(fd, s, len); } /*! indicates that a block of data is received */ void MyPty::readPty() -{ +{ char buf[4096]; int len = ::read( fd, buf, 4096 ); if (len == -1) donePty(); if (len < 0) return; emit block_in(buf,len); - + #ifdef VERBOSE_DEBUG // verbose debug printf("read bytes:\n"); for (int i = 0; i < len; i++) printf("%c", buf[i]); printf("\n"); #endif } diff --git a/core/apps/embeddedkonsole/konsole.cpp b/core/apps/embeddedkonsole/konsole.cpp index b8f009d..1c613a9 100644 --- a/core/apps/embeddedkonsole/konsole.cpp +++ b/core/apps/embeddedkonsole/konsole.cpp @@ -8,33 +8,32 @@ /* Copyright (c) 1997,1998 by Lars Doelle <lars.doelle@on-line.de> */ /* */ /* This file is part of Konsole, an X terminal. */ /* */ /* The material contained in here more or less directly orginates from */ /* kvt, which is copyright (c) 1996 by Matthias Ettrich <ettrich@kde.org> */ /* */ /* ---------------------------------------------------------------------- */ /* */ /* Ported Konsole to Qt/Embedded */ /* */ /* Copyright (C) 2000 by John Ryland <jryland@trolltech.com> */ /* */ /* -------------------------------------------------------------------------- */ // enhancements added by L.J. Potter <ljp@llornkcor.com> // enhancements added by Phillip Kuhn -//#define QT_QWS_OPIE #include <stdlib.h> #ifdef QT_QWS_OPIE #include <opie2/ocolorpopupmenu.h> #endif #include <qpe/resource.h> #include <qdir.h> #include <qevent.h> #include <qdragobject.h> #include <qobjectlist.h> #include <qtoolbutton.h> #include <qtoolbar.h> #include <qpushbutton.h> @@ -356,34 +355,34 @@ void Konsole::init(const char* _pgm, QStrList & _args) && i != SIGINT && i != SIGILL && i != SIGTERM && i != SIGBUS) signal(i,sig_handler); } #endif signal(SIGSTOP, sig_handler); signal(SIGCONT, sig_handler); signal(SIGTSTP, sig_handler); b_scroll = TRUE; // histon; n_keytab = 0; n_render = 0; startUp=0; fromMenu = FALSE; fullscreen = false; - setCaption( "Konsole" ); - setIcon( Resource::loadPixmap( "qkonsole/qkonsole" ) ); + setCaption( tr( "Konsole" ) ); + setIcon( Resource::loadPixmap( "konsole/Terminal" ) ); Config cfg( "Konsole" ); cfg.setGroup("Font"); QString tmp; // initialize the list of allowed fonts /////////////////////////////////// QString cfgFontName = cfg.readEntry("FontName","Lcfont"); int cfgFontSize = cfg.readNumEntry("FontSize",18); cfont = -1; // this code causes repeated access to all the font files // which does slow down startup QFontDatabase fontDB; QStringList familyNames; @@ -564,33 +563,33 @@ void Konsole::init(const char* _pgm, QStrList & _args) cm_bm = colorMenu->insertItem(tr( "Blue on Magenta")); cm_mb = colorMenu->insertItem(tr( "Magenta on Blue")); cm_cw = colorMenu->insertItem(tr( "Cyan on White")); cm_wc = colorMenu->insertItem(tr( "White on Cyan")); cm_bb = colorMenu->insertItem(tr( "Blue on Black")); cm_ab = colorMenu->insertItem(tr( "Amber on Black")); cm_default = colorMenu->insertItem(tr("default")); #ifdef QT_QWS_OPIE colorMenu->insertItem(tr( "Custom")); #endif configMenu->insertItem(tr( "Colors") ,colorMenu); sessionList = new QPopupMenu(this); - sessionList-> insertItem ( Resource::loadPixmap ( "qkonsole/qkonsole" ), tr( "new session" ), this, + sessionList-> insertItem ( Resource::loadPixmap ( "konsole/Terminal" ), tr( "new session" ), this, SLOT(newSession()) ); // connect( fontList, SIGNAL( activated(int) ), this, SLOT( fontChanged(int) )); connect( configMenu, SIGNAL( activated(int) ), this, SLOT( configMenuSelected(int) )); connect( colorMenu, SIGNAL( activated(int) ), this, SLOT( colorMenuIsSelected(int) )); connect( tabMenu, SIGNAL( activated(int) ), this, SLOT( tabMenuSelected(int) )); connect( scrollMenu, SIGNAL(activated(int)),this,SLOT(scrollMenuSelected(int))); connect( editCommandListMenu,SIGNAL(activated(int)),this,SLOT(editCommandListMenuSelected(int))); connect( sessionList, SIGNAL(activated(int)), this, SLOT( sessionListSelected(int) ) ); menuBar->insertItem( tr("View"), configMenu ); menuBar->insertItem( tr("Fonts"), fontList ); menuBar->insertItem( tr("Sessions"), sessionList ); toolBar = new QToolBar( this ); @@ -866,33 +865,33 @@ void Konsole::changeFontSize(int delta) int fsize = fonts.at(i)->getSize(); printf("%d size=%d fsize=%d closest=%d\n", i, size, fsize, closest); if ((delta > 0 && fsize > size && fsize < closest) || (delta < 0 && fsize < size && fsize > closest)) { closest = fsize; closest_font = i; } } if (closest_font >= 0) { printf("font closest %d (%d)\n", closest_font, closest); setFont(closest_font); } } -int Konsole::findFont(QString name, int size, bool exactMatch) +int Konsole::findFont(const QString& name, int size, bool exactMatch) { for(uint i = 0; i < fonts.count(); i++) { if (fonts.at(i)->getName() == name && fonts.at(i)->getSize() == size) { return(i); } } if (exactMatch) { return(-1); } for(uint i = 0; i < fonts.count(); i++) { if (fonts.at(i)->getSize() == size) @@ -1146,37 +1145,37 @@ void Konsole::doneSession(TEWidget* te, int ) // } if (te != 0) { te->currentSession->setConnect(FALSE); tab->removeTab(te); delete te->currentSession; delete te; sessionList->removeItem(nsessions); nsessions--; } if (nsessions == 0) { close(); } } -void Konsole::changeTitle(TEWidget* te, QString newTitle ) +void Konsole::changeTitle(TEWidget* te, const QString& newTitle ) { if (te == getTe()) { - setCaption(newTitle + " - QKonsole"); + setCaption( newTitle + " - " + tr( "Konsole " ) ); } } void Konsole::newSession() { if(nsessions < 15) { // seems to be something weird about 16 tabs on the Zaurus.... memory? TEWidget* te = new TEWidget(tab); Config cfg( "Konsole" ); cfg.setGroup("Menubar"); // FIXME use more defaults from config file te->useBeep=cfg.readBoolEntry("useBeep",0); // te->setBackgroundMode(PaletteBase); //we want transparent!! @@ -1187,34 +1186,34 @@ void Konsole::newSession() QString fontName = cfg.readEntry("FontName"+sn, cfg.readEntry("FontName", fonts.at(cfont)->getFamily())); int fontSize = cfg.readNumEntry("FontSize"+sn, cfg.readNumEntry("FontSize", fonts.at(cfont)->getSize())); cfont = findFont(fontName, fontSize, false); printf("lookup font %s size %d got %d\n", fontName.latin1(), fontSize, cfont); if (cfont < 0) cfont = 0; te->setVTFont(fonts.at(cfont)->getFont()); tab->addTab(te); TESession* se = new TESession(this, te, se_pgm, se_args, "xterm"); te->currentSession = se; connect( se, SIGNAL(done(TEWidget*,int)), this, SLOT(doneSession(TEWidget*,int)) ); - connect( se, SIGNAL(changeTitle(TEWidget*,QString)), this, - SLOT(changeTitle(TEWidget*,QString)) ); + connect( se, SIGNAL(changeTitle(TEWidget*,const QString&)), this, + SLOT(changeTitle(TEWidget*,const QString&)) ); connect(te, SIGNAL(changeFontSize(int)), this, SLOT(changeFontSize(int))); connect(te, SIGNAL(changeSession(int)), this, SLOT(changeSession(int))); connect(te, SIGNAL(newSession()), this, SLOT(newSession())); connect(te, SIGNAL(toggleFullScreen()), this, SLOT(toggleFullScreen())); connect(te, SIGNAL(setFullScreen(bool)), this, SLOT(setFullScreen(bool))); se->run(); se->setConnect(TRUE); se->setHistory(b_scroll); nsessions++; sessionList->insertItem(QString::number(nsessions), nsessions); sessionListSelected(nsessions); doWrap(); setColor(nsessions-1); } } @@ -1296,37 +1295,37 @@ void Konsole::switchSession(QWidget* w) { VTFont *fnt = fonts.at(i); bool cf = fnt->getFont() == teFnt; fontList->setItemChecked(i, cf); if (cf) { cfont = i; familyNum = fnt->getFamilyNum(); } } for(int i = 0; i < (int)fontList->count(); i++) { fontList->setItemChecked(i + 1000, i == familyNum); } if (! te->currentSession->Title().isEmpty() ) { - setCaption(te->currentSession->Title() + " - QKonsole"); + setCaption( te->currentSession->Title() + " - " + tr( "Konsole" ) ); } else { - setCaption( "Konsole" ); + setCaption( tr( "Konsole" ) ); } // colorMenuSelected(te->color_menu_item); } void Konsole::toggleFullScreen() { setFullScreen(! fullscreen); } void Konsole::setFullScreen ( bool b ) { static QSize normalsize; static bool listHidden; if (b == fullscreen) diff --git a/core/apps/embeddedkonsole/konsole.h b/core/apps/embeddedkonsole/konsole.h index 37babbb..e163cb8 100644 --- a/core/apps/embeddedkonsole/konsole.h +++ b/core/apps/embeddedkonsole/konsole.h @@ -60,33 +60,33 @@ public: void show(); void setColor(int); int lastSelectedMenu; int startUp; public slots: void changeFontSize(int); void toggleFullScreen(); void setFullScreen(bool); void changeSession(int); void cycleZoom(); void newSession(); private slots: void setDocument(const QString &); void doneSession(TEWidget*,int); - void changeTitle(TEWidget*,QString); + void changeTitle(TEWidget*, const QString&); void changeColumns(int); void setFont(int); // void fontChanged(int); void configMenuSelected(int ); void colorMenuSelected(int); void colorMenuIsSelected(int); void tabMenuSelected(int); void sessionListSelected(int); void enterCommand(int); void hitEnter(); void hitSpace(); void hitTab(); void hitPaste(); void hitUp(); void hitDown(); @@ -97,47 +97,47 @@ private slots: void editCommandListMenuSelected(int); void parseCommandLine(); void changeForegroundColor(const QColor &); void changeBackgroundColor(const QColor &); void historyDialog(); void fullscreenTimeout(); private: void doWrap(); void init(const char* _pgm, QStrList & _args); void initSession(const char* _pgm, QStrList & _args); void runSession(TESession* s); void setColorPixmaps(); void setHistory(bool); void setColors(QColor foreground, QColor background); - int findFont(QString name, int size, bool exact = false); + int findFont(const QString& name, int size, bool exact = false); QSize calcSize(int columns, int lines); TEWidget* getTe(); QStringList commands; QLabel * msgLabel; QColor foreground, background; bool fromMenu; bool fullscreen; private: class VTFont { public: - VTFont(QString name, QFont& font, QString family, int familyNum, int size) + VTFont(const QString& name, QFont& font, const QString& family, int familyNum, int size) { this->name = name; this->font = font; this->family = family; this->size = size; this->familyNum = familyNum; } QFont& getFont() { return font; } QString getName() { return name; } diff --git a/core/apps/embeddedkonsole/session.h b/core/apps/embeddedkonsole/session.h index f399e96..a4b33e2 100644 --- a/core/apps/embeddedkonsole/session.h +++ b/core/apps/embeddedkonsole/session.h @@ -55,33 +55,33 @@ public: void setHistory(bool on); void setSchemaNo(int sn); void setKeymapNo(int kn); void setFontNo(int fn); void kill(int signal); public slots: void run(); void done(int status); void terminate(); void changeTitle(int, const QString& title); signals: void done(TEWidget*, int); - void changeTitle(TEWidget*, QString); + void changeTitle(TEWidget*, const QString&); private: // TEPty* sh; MyPty* sh; TEWidget* te; TEmulation* em; //FIXME: using the indices here // is propably very bad. We should // use a persistent reference instead. int schema_no; int font_no; int keymap_no; QString title; |