summaryrefslogtreecommitdiffstats
path: root/src/modules/tip
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-02-24 02:13:59 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2010-02-24 02:13:59 +0000
commita6d58bb6052ac8cb01805a48c4ad2f129126116f (patch)
treedd867a099fcbb263a8009a9fb22695b87855dad6 /src/modules/tip
downloadkvirc-a6d58bb6052ac8cb01805a48c4ad2f129126116f.tar.gz
kvirc-a6d58bb6052ac8cb01805a48c4ad2f129126116f.zip
Added KDE3 version of kvirc
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kvirc@1095341 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'src/modules/tip')
-rw-r--r--src/modules/tip/Makefile.am30
-rw-r--r--src/modules/tip/kvi_tip.pngbin0 -> 2590 bytes
-rw-r--r--src/modules/tip/libkvitip.cpp309
-rw-r--r--src/modules/tip/libkvitip.h71
-rw-r--r--src/modules/tip/libkvitip.kvc28
-rw-r--r--src/modules/tip/libkvitip_cs.kvc29
-rw-r--r--src/modules/tip/libkvitip_it.kvc28
-rw-r--r--src/modules/tip/libkvitip_ru.kvc29
8 files changed, 524 insertions, 0 deletions
diff --git a/src/modules/tip/Makefile.am b/src/modules/tip/Makefile.am
new file mode 100644
index 00000000..2a9fbbcb
--- /dev/null
+++ b/src/modules/tip/Makefile.am
@@ -0,0 +1,30 @@
+###############################################################################
+# KVirc IRC client Makefile - 10.03.2000 Szymon Stefanek <stefanek@tin.it>
+###############################################################################
+
+AM_CPPFLAGS = -I$(SS_TOPSRCDIR)/src/kvilib/include/ -I$(SS_TOPSRCDIR)/src/kvirc/include/ \
+$(SS_INCDIRS) $(SS_CPPFLAGS) -DGLOBAL_KVIRC_DIR=\"$(globalkvircdir)\"
+
+pluglib_LTLIBRARIES = libkvitip.la
+
+libkvitip_la_LDFLAGS = -module -avoid-version $(SS_LDFLAGS) $(SS_LIBDIRS)
+
+libkvitip_la_SOURCES = libkvitip.cpp
+libkvitip_la_LIBADD = $(SS_LIBLINK) ../../kvilib/build/libkvilib.la
+
+noinst_HEADERS= libkvitip.h
+
+tmpdir = $(picsdir)
+
+tmp_DATA = kvi_tip.png
+
+confdir = $(configmodulesdir)
+
+conf_DATA = libkvitip.kvc libkvitip_it.kvc libkvitip_cs.kvc libkvitip_ru.kvc
+
+EXTRA_DIST = $(tmp_DATA) $(conf_DATA)
+
+%.moc: %.h
+ $(SS_QT_MOC) $< -o $@
+
+libkvitip.cpp: libkvitip.moc
diff --git a/src/modules/tip/kvi_tip.png b/src/modules/tip/kvi_tip.png
new file mode 100644
index 00000000..29312d4a
--- /dev/null
+++ b/src/modules/tip/kvi_tip.png
Binary files differ
diff --git a/src/modules/tip/libkvitip.cpp b/src/modules/tip/libkvitip.cpp
new file mode 100644
index 00000000..ac23d914
--- /dev/null
+++ b/src/modules/tip/libkvitip.cpp
@@ -0,0 +1,309 @@
+//
+// File : libkvitip.cpp
+// Creation date : Thu May 10 2001 13:50:11 CEST by Szymon Stefanek
+//
+// This file is part of the KVirc irc client distribution
+// Copyright (C) 2001 Szymon Stefanek (pragma at kvirc dot net)
+//
+// This program is FREE software. You can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your opinion) any later version.
+//
+// This program is distributed in the HOPE that it will be USEFUL,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, write to the Free Software Foundation,
+// Inc. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+//
+
+#include "libkvitip.h"
+#include "kvi_module.h"
+#include "kvi_styled_controls.h"
+
+#include "kvi_locale.h"
+#include "kvi_app.h"
+
+#include "kvi_iconmanager.h"
+#include "kvi_options.h"
+#include "kvi_fileutils.h"
+
+#include <qpushbutton.h>
+
+#ifdef COMPILE_USE_QT4
+#include <q3simplerichtext.h>
+#include <QDesktopWidget>
+#include <QCloseEvent>
+#define KviTalSimpleRichText Q3SimpleRichText
+#else
+#include <qsimplerichtext.h>
+#define KviTalSimpleRichText QSimpleRichText
+#endif
+
+#include <qfont.h>
+#include <qtextcodec.h>
+#include <qpainter.h>
+
+KviTipWindow * g_pTipWindow = 0;
+
+#define KVI_TIP_WINDOW_HEIGHT 200
+#define KVI_TIP_WINDOW_WIDTH 500
+#define KVI_TIP_WINDOW_BUTTON_WIDTH 80
+#define KVI_TIP_WINDOW_BUTTON_HEIGHT 30
+#define KVI_TIP_WINDOW_BORDER 5
+#define KVI_TIP_WINDOW_DOUBLE_BORDER 10
+#define KVI_TIP_WINDOW_SPACING 2
+
+
+KviTipFrame::KviTipFrame(QWidget * par)
+: QFrame(par)
+{
+ KviStr buffer;
+ g_pApp->findImage(buffer,"kvi_tip.png");
+ m_pTipPixmap = new QPixmap(buffer.ptr());
+#ifdef COMPILE_USE_QT4
+ setBackgroundMode(Qt::NoBackground);
+#else
+ setBackgroundMode(QWidget::NoBackground);
+#endif
+ setFrameStyle(QFrame::Sunken | QFrame::WinPanel);
+}
+
+KviTipFrame::~KviTipFrame()
+{
+ delete m_pTipPixmap;
+}
+
+void KviTipFrame::setText(const QString &text)
+{
+ m_szText = "<center><font color=\"#FFFFFF\">";
+ m_szText += text;
+ m_szText += "</font></center>";
+ update();
+}
+
+void KviTipFrame::drawContents(QPainter *p)
+{
+ p->fillRect(contentsRect(),QColor(0,0,0));
+ p->drawPixmap(5,(height() - m_pTipPixmap->height()) / 2,*m_pTipPixmap);
+
+ QFont f = QFont();
+ f.setStyleHint(QFont::SansSerif);
+ f.setPointSize(12);
+
+ KviTalSimpleRichText doc(m_szText,f);
+ doc.setWidth(width() - 80);
+
+ QRegion reg(0,0,1000,20000);
+
+#if QT_VERSION >= 300
+ doc.draw(p,70,10,reg,colorGroup());
+#else
+ doc.draw(p,70,10,reg,palette());
+#endif
+}
+
+KviTipWindow::KviTipWindow()
+: QWidget(0,"kvirc_tip_window" /*,WStyle_Customize | WStyle_Title | WStyle_DialogBorder | WStyle_StaysOnTop*/ )
+{
+ m_pConfig = 0;
+
+
+ m_pTipFrame = new KviTipFrame(this);
+ m_pTipFrame->setGeometry(
+ KVI_TIP_WINDOW_BORDER,
+ KVI_TIP_WINDOW_BORDER,
+ KVI_TIP_WINDOW_WIDTH - KVI_TIP_WINDOW_DOUBLE_BORDER,
+ KVI_TIP_WINDOW_HEIGHT - (KVI_TIP_WINDOW_DOUBLE_BORDER + KVI_TIP_WINDOW_BUTTON_HEIGHT + KVI_TIP_WINDOW_SPACING));
+
+ QPushButton * pb = new QPushButton(">>",this);
+ pb->setGeometry(
+ KVI_TIP_WINDOW_WIDTH - ((KVI_TIP_WINDOW_BUTTON_WIDTH * 2)+ KVI_TIP_WINDOW_BORDER + KVI_TIP_WINDOW_SPACING),
+ KVI_TIP_WINDOW_HEIGHT - (KVI_TIP_WINDOW_BUTTON_HEIGHT + KVI_TIP_WINDOW_BORDER),
+ KVI_TIP_WINDOW_BUTTON_WIDTH,
+ KVI_TIP_WINDOW_BUTTON_HEIGHT
+ );
+ connect(pb,SIGNAL(clicked()),this,SLOT(nextTip()));
+
+ pb = new QPushButton(__tr2qs("Close"),this);
+ pb->setGeometry(
+ KVI_TIP_WINDOW_WIDTH - (KVI_TIP_WINDOW_BUTTON_WIDTH + KVI_TIP_WINDOW_BORDER),
+ KVI_TIP_WINDOW_HEIGHT - (KVI_TIP_WINDOW_BUTTON_HEIGHT + KVI_TIP_WINDOW_BORDER),
+ KVI_TIP_WINDOW_BUTTON_WIDTH,
+ KVI_TIP_WINDOW_BUTTON_HEIGHT
+ );
+ connect(pb,SIGNAL(clicked()),this,SLOT(close()));
+ pb->setDefault(true);
+
+ m_pShowAtStartupCheck = new KviStyledCheckBox(__tr2qs("Show at startup"),this);
+ m_pShowAtStartupCheck->setChecked(KVI_OPTION_BOOL(KviOption_boolShowTipAtStartup));
+ m_pShowAtStartupCheck->setGeometry(
+ KVI_TIP_WINDOW_BORDER,
+ KVI_TIP_WINDOW_HEIGHT - (KVI_TIP_WINDOW_BUTTON_HEIGHT + KVI_TIP_WINDOW_BORDER),
+ KVI_TIP_WINDOW_WIDTH - ((KVI_TIP_WINDOW_BORDER + KVI_TIP_WINDOW_BUTTON_WIDTH + KVI_TIP_WINDOW_SPACING) * 2),
+ KVI_TIP_WINDOW_BUTTON_HEIGHT
+ );
+
+ setFixedSize(KVI_TIP_WINDOW_WIDTH,KVI_TIP_WINDOW_HEIGHT);
+
+ setIcon(*(g_pIconManager->getSmallIcon(KVI_SMALLICON_IDEA)));
+
+ setCaption(__tr2qs("Did you know..."));
+
+ pb->setFocus();
+
+}
+
+KviTipWindow::~KviTipWindow()
+{
+ KVI_OPTION_BOOL(KviOption_boolShowTipAtStartup) = m_pShowAtStartupCheck->isChecked();
+ if(m_pConfig)closeConfig();
+}
+
+bool KviTipWindow::openConfig(const char * filename,bool bEnsureExists)
+{
+ if(m_pConfig)closeConfig();
+
+ m_szConfigFileName = filename;
+// m_szConfigFileName.cutToLast('/');
+
+ KviStr buffer;
+ g_pApp->getReadOnlyConfigPath(buffer,m_szConfigFileName.ptr(),KviApp::ConfigPlugins,true);
+
+ if(bEnsureExists)
+ {
+ if(!KviFileUtils::fileExists(buffer.ptr()))return false;
+ }
+
+ m_pConfig = new KviConfig(buffer.ptr(),KviConfig::Read);
+
+ return true;
+}
+
+void KviTipWindow::closeConfig()
+{
+ KviStr buffer;
+ g_pApp->getLocalKvircDirectory(buffer,KviApp::ConfigPlugins,m_szConfigFileName.ptr());
+ m_pConfig->setSavePath(buffer.ptr());
+ delete m_pConfig;
+ m_pConfig = 0;
+}
+
+void KviTipWindow::nextTip()
+{
+ if(!m_pConfig)
+ {
+ KviStr szLocale = KviLocale::localeName();
+ KviStr szFile;
+ szFile.sprintf("libkvitip_%s.kvc",szLocale.ptr());
+ if(!openConfig(szFile.ptr(),true))
+ {
+ szLocale.cutFromFirst('.');
+ szLocale.cutFromFirst('_');
+ szLocale.cutFromFirst('@');
+ szFile.sprintf("libkvitip_%s.kvc",szLocale.ptr());
+ if(!openConfig(szFile.ptr(),true))
+ {
+ openConfig("libkvitip.kvc",false);
+ }
+ }
+ }
+
+ unsigned int uNumTips = m_pConfig->readUIntEntry("uNumTips",0);
+ unsigned int uNextTip = m_pConfig->readUIntEntry("uNextTip",0);
+
+
+ KviStr tmp(KviStr::Format,"%u",uNextTip);
+ QString szTip = m_pConfig->readEntry(tmp.ptr(),__tr2qs("<b>Can't find any tip... :(</b>"));
+
+ //debug("REDECODED=%s",szTip.utf8().data());
+
+ uNextTip++;
+ if(uNextTip >= uNumTips)uNextTip = 0;
+ m_pConfig->writeEntry("uNextTip",uNextTip);
+
+ m_pTipFrame->setText(szTip);
+}
+
+void KviTipWindow::showEvent(QShowEvent *e)
+{
+ resize(KVI_TIP_WINDOW_WIDTH,KVI_TIP_WINDOW_HEIGHT);
+ move((g_pApp->desktop()->width() - KVI_TIP_WINDOW_WIDTH) / 2,
+ (g_pApp->desktop()->height() - KVI_TIP_WINDOW_HEIGHT) / 2);
+ QWidget::showEvent(e);
+}
+
+void KviTipWindow::closeEvent(QCloseEvent *e)
+{
+ e->ignore();
+ delete this;
+ g_pTipWindow = 0;
+}
+
+/*
+ @doc: tip.open
+ @type:
+ command
+ @title:
+ tip.open
+ @short:
+ Opens the "did you know..." tip window
+ @syntax:
+ tip.open [tip_file_name:string]
+ @description:
+ Opens the "did you know..." tip window.<br>
+ If <tip_file_name> is specified , that tip is used instead of
+ the default tips provided with kvirc.<br>
+ <tip_file_name> must be a file name with no path and must refer to a
+ standard KVIrc configuration file found in the global or local
+ KVIrc plugin configuration directory ($KVIrcDir/config/modules).<br>
+ Once the window has been opened, the next tip avaiable in the config file is shown.<br>
+ This command works even if the tip window is already opened.<br>
+*/
+
+
+static bool tip_kvs_cmd_open(KviKvsModuleCommandCall * c)
+{
+ QString szTipfilename;
+ KVSM_PARAMETERS_BEGIN(c)
+ KVSM_PARAMETER("filename",KVS_PT_STRING,KVS_PF_OPTIONAL,szTipfilename)
+ KVSM_PARAMETERS_END(c)
+ if(!g_pTipWindow)g_pTipWindow = new KviTipWindow();
+ if (!szTipfilename.isEmpty()) g_pTipWindow->openConfig(szTipfilename);
+ g_pTipWindow->nextTip();
+ g_pTipWindow->show();
+ return true;
+}
+
+static bool tip_module_init(KviModule *m)
+{
+ KVSM_REGISTER_SIMPLE_COMMAND(m,"open",tip_kvs_cmd_open);
+ return true;
+}
+
+static bool tip_module_cleanup(KviModule *m)
+{
+ if(g_pTipWindow)g_pTipWindow->close();
+ return true;
+}
+
+static bool tip_module_can_unload(KviModule *m)
+{
+ return (g_pTipWindow == 0);
+}
+
+KVIRC_MODULE(
+ "Tip", // module name
+ "1.0.0", // module version
+ "Copyright (C) 2000 Szymon Stefanek (pragma at kvirc dot net)", // author & (C)
+ "\"Did you know...\" tip",
+ tip_module_init,
+ tip_module_can_unload,
+ 0,
+ tip_module_cleanup
+)
+
+#include "libkvitip.moc"
diff --git a/src/modules/tip/libkvitip.h b/src/modules/tip/libkvitip.h
new file mode 100644
index 00000000..1387f8df
--- /dev/null
+++ b/src/modules/tip/libkvitip.h
@@ -0,0 +1,71 @@
+#ifndef _LIBKVITIP_H_
+#define _LIBKVITIP_H_
+
+//
+// File : kvi_tip.cpp
+// Creation date : Thu May 10 2001 13:49:12 CEST by Szymon Stefanek
+//
+// This file is part of the KVirc irc client distribution
+// Copyright (C) 2001 Szymon Stefanek (pragma at kvirc dot net)
+//
+// This program is FREE software. You can redistribute it and/or
+// modify it under the terms of the GNU General Public License
+// as published by the Free Software Foundation; either version 2
+// of the License, or (at your opinion) any later version.
+//
+// This program is distributed in the HOPE that it will be USEFUL,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+// See the GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, write to the Free Software Foundation,
+// Inc. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+//
+
+#include <qwidget.h>
+#include <qframe.h>
+#include <qpixmap.h>
+#include <qcheckbox.h>
+
+#include "kvi_styled_controls.h"
+#include "kvi_string.h"
+#include "kvi_config.h"
+
+class KviTipFrame : public QFrame
+{
+ Q_OBJECT
+public:
+ KviTipFrame(QWidget * par);
+ ~KviTipFrame();
+protected:
+ QString m_szText;
+ QPixmap * m_pTipPixmap;
+protected:
+ virtual void drawContents(QPainter *p);
+public:
+ void setText(const QString &text);
+};
+
+class KviTipWindow : public QWidget
+{
+ Q_OBJECT
+public:
+ KviTipWindow();
+ ~KviTipWindow();
+protected:
+ KviTipFrame * m_pTipFrame;
+ KviStyledCheckBox * m_pShowAtStartupCheck;
+ KviConfig * m_pConfig;
+ KviStr m_szConfigFileName; // no path!
+protected:
+ virtual void showEvent(QShowEvent *e);
+ virtual void closeEvent(QCloseEvent *e);
+public:
+ bool openConfig(const char * filename,bool bEnsureExists = true);
+ void closeConfig();
+public slots:
+ void nextTip();
+};
+
+#endif //_LIBKVITIP_H_
diff --git a/src/modules/tip/libkvitip.kvc b/src/modules/tip/libkvitip.kvc
new file mode 100644
index 00000000..94db1571
--- /dev/null
+++ b/src/modules/tip/libkvitip.kvc
@@ -0,0 +1,28 @@
+[KVIrc]
+uNextTip=0
+uNumTips=25
+TranslatorHint=This-file-MUST-be-encoded-in-UTF8
+0=You can open connections to multiple servers in a single KVIrc window, just select "New IRC Context" from the KVIrc menu.<br>The original style of devoting a KVIrc frame window to each connection is still supported, just select "New Frame Window" from the same menu.
+1=IPv6 is now fully supported, even for DCC transfers.<br><b>/server -i &lt;servername&gt;</b> is the command. :)
+2=KVIrc supports SSL encryption.<br>SSL encrypted IRC connections can be established by using <b>/server -s</b>, and DCC connections by using <b>/dcc.chat -s</b><br>It also works over IPv6.
+3=An <b>IRC context</b> is a set of resources dealing with a single server connection. It has an associated <b>Console</b> window that displays system and server messages.
+4=KVIrc is a highly modular application. Modules are loaded and unloaded transparently to the user (and even to the scripter!). You can also write your own modules that extend the scripting language, or add other features.
+5=The <b>gnutella</b> module has been removed from the KVIrc source tree, and is now shipped as a separate package.
+6=KVIrc supports multiple handler scripts for a single event. This allows multiple scripts to be installed at the same time, avoids handler collisions and helps in adding/removing and activating/deactivating script sections.
+7=KVIrc supports the <b>irc://</b> Uniform Resource Locator (URL). Run the command: <br><b>kvirc irc://irc.yourserver.org:6667/channel</b><br> to connect to that server.<br>The general syntax is:<br><b>irc[6]://&lt;server-name&gt;[:&lt;port&gt;][/[&lt;channel&gt;[?&lt;pass&gt;]]]</b>
+8=The KVIrc executable acts like the "netscape -remote" command, if an instance of KVIrc is already running, the command line parameters are passed to that instance via IPC. You can override this behaviour with the <b>-f</b> switch.
+9=KVIrc can be your browser's handler for <b>irc://</b> URLs. If KVIrc has KDE support, you should be able to run it by simply typing an <b>irc://</b> URL into Konqueror's Location bar.<br>Try <b>irc://irc.freenode.net/kvirc</b> :)
+10=URLs can also be made for IPv6 IRC servers, the following syntax applies in this case:<br><b>irc6://&lt;ipv6-server-name&gt;[:&lt;port&gt;][/[&lt;channel&gt;[?&lt;pass&gt;]]]</b>
+11=You can switch between windows pressing <b>Ctrl+Left/Right</b>. <b>Alt+Left/Right</b> cycles only between windows in the current context.
+12=A quick method for connecting to a server in a new IRC context is <b>/server -n &lt;servername&gt;</b>
+13=KVIrc is portable between Windows and various flavours of Unix machines. If you're a good scripter, your scripts will be portable too!
+14=Want to automatically join a channel on connect?<br>Easy!<br>Just click "Advanced" in the server settings and add the channel in the "Join Channels" tab. For something that works for all servers, try <b>/event(OnIrc,autojoin){ join #yourchannel; }</b>
+15=Do you know what an avatar is? Check out <b>/help avatar</b>
+16=The DCC settings page has a lot of options that can help you solve many common DCC connection problems. People behind firewalls might be able to send data, too. It's just a matter of setting things up. :)
+17=There is a separate OpenNap compatibility module (<b>opennap</b>) that enables OpenNap-based chatting with KVIrc.
+18=KVIrc supports many 8-bit character encodings. You can "speak" KOI8-R based Russian on one channel and Japanese on another over the same connection (with appropriate fonts). We strongly encourage you to use <b>Unicode</b> (UTF-8), which supports almost every language in the world.
+19=To avoid excessive DCC transfers, it is recommended that you make your avatars available on the Web. You can also use any existing image on the Web as an avatar.<br><b>/avatar #yourchan http://funnyhost.com/funny/funny.png</b> will work!
+20=KVIrc has a built-in HTTP client, and you can download files from the Web by using the <b>/http.get</b> command.
+21=Don't like the window tree taskbar mode? You can opt for a traditional taskbar (similar to mIRC) in the taskbar settings page under the preferences.
+22=You can copy text from the text window to the clipboard by simply selecting it with the mouse. If you also keep Shift pressed then the color codes will be copied as well.
+23=This is the last tip. You can add your own tips - Check out <b>/help tip.open</b>. Feel free to submit more tips (in any language) to <b>trisk-kvirc(at)quasarnet.org</b>.
diff --git a/src/modules/tip/libkvitip_cs.kvc b/src/modules/tip/libkvitip_cs.kvc
new file mode 100644
index 00000000..ab169fe7
--- /dev/null
+++ b/src/modules/tip/libkvitip_cs.kvc
@@ -0,0 +1,29 @@
+[KVIrc]
+uNextTip=0
+uNumTips=25
+Encoding=UTF8
+0=Můžete otevřít více spojení s více servery v jednom KVIrc okně, jen vyberte "Nový IRC Kontext" v KVIrc menu.<br>Původní styl vnořeného okna KVIrcu pro každé spojení je stále podporován, stačí vybrat "Nové okno s rámcem" ze stejné nabídky.
+1=IPv6 je nyní plně podporováno, dokonce pro DCC přenosy.<br><b>/server -i &lt;název_serveru&gt;</b> je příkaz. :)
+2=KVIrc podporuje Šifrování SSL.<br>IRC spojení šifrovaná pomocí SSL mohou být navázána příkazem <b>/server -s</b>, a DCC spojení použitím <b>/dcc.chat -s</b><br>Funguje také na IPv6.
+3=<b>IRC context</b> je soubor zdrojů patřících k jednomu spojení se serverem. Má přiřazené okno <b>Console</b> které ukazuje systémové zprávy a zprávy serveru.
+4=KVIrc je vysoce modulární aplikace. Moduly jsou načítány a vypínány transparentně pro uživatele (i pro skriptora!). Můžete také napsat vlastní moduly pro rozšíření skriptovacího jazyka, nebo rozšíření funkcí KVIrc.
+5=Modul <b>gnutella</b> byl odstraněn ze zdrojového stromu KVIrc a je dodáván jako samostatný balíček.
+6=KVIrc Podporuje několikanásobné zpracování skriptů pro jednu událost. To dovoluje mít nainstalováno více skriptů současně, aniž by spolu kolidovaly a usnadnuje přidávání/odebírání a aktivaci/deaktivaci částí skriptu.
+7=KVIrc podporuje <b>irc://</b> Uniform Resource Locator (URL). Spusťte příkaz: <br><b>kvirc irc://irc.vášserver.org:6667/kanál</b><br> pro připojení k tomuto serveru.<br>Obecná syntaxe je:<br><b>irc[6]://&lt;jméno-serveru&gt;[:&lt;port&gt;][/[&lt;kanál&gt;[?&lt;heslo&gt;]]]</b>
+8=Spuštěný soubor KVIrcu pracuje jako příkaz "netscape -remote", pokud již KVIrc běží, parametry příkazového řádku jsou předány běžícímu KVIrcu přes IPC. Můžete obejít toto chování použitím parametru <b>-f</b>.
+9=KVIrc může zpracovávat URL <b>irc://</b> z Vašeho prohlížeče. Pokud má KVIrc podporu KDE, můžete jo spustit pouhým zadáním <b>irc://</b> URL do adresního řádku Konqueroru.<br>Zkuste <b>irc://irc.freenode.net/kvirc</b> :)
+10=URL mohou být také použita pro IPv6 IRC servery, v tom připadě je syntaxe:<br><b>irc6://&lt;název-ipv6-serveru&gt;[:&lt;port&gt;][/[&lt;kanál&gt;[?&lt;heslo&gt;]]]</b>
+11=Můžete přepínat mezi okny stiskem <b>Ctrl+Vlevo/Vpravo</b>. <b>Alt+Vlevo/Vpravo</b> přepíná pouze mezi okny v aktuálním kontextu.
+12=Rychlý způsob pro připojení k serveru v novém IRC kontextu je <b>/server -n &lt;název-serveru&gt;</b>
+13=KVIrc je přenositelný mezi Windows a různými Unixovými stroji. Pokud jste dobrý skriptor, Vaše skripty budou přenositelné také!
+14=Chcete automaticky vstoupit do kanálu při připojení?<br>Snadné!<br>Stačí kliknout na "Pokročilé" v nastavení serveru a přidat kanál do "Příchod do kanálů". Pro něco co funguje na všech serverech, zkuste <b>/event(OnIrc,autojoin){ join #váškanál; }</b>
+15=Víte co je Avatar? Mrkněte na <b>/help avatar</b>
+16=Nastavení DCC má mnoho možností, které Vám pomohou vyřešit mnoho běžných problémů s DCC spojením. Lidé za firewallem mohou také posílat data. Je to jen otázka správného nastavení. :)
+17=K dispozici je samostatný OpenNap modul (<b>opennap</b>), který umožnuje chat založený na OpenNap s KVIrc.
+18=KVIrc podporuje mnoho 8-bitových znakových sad. Můžete "mluvit" KOI8-R Ruštinou na jednom kanále a Japonsky na jiném při stejném spojení (s příslušnými fonty). Doporučujeme použít <b>Unicode</b> (UTF-8), který podporuje téměř každý světový jazyk.
+19=Abyste předešli mnohým DCC přenosům, doporučuje se dát si Avatar online na Web. Můžete také použít libovolný existující obrázek na webu jako Avatar.<br><b>/avatar #váškanál http://funnyhost.com/funny/funny.png</b> funguje!
+20=KVIrc má vestavěný HTTP klient, takže můžete stahovat soubory z Webu pomocí příkazu <b>/http.get</b>.
+21=Nelíbí se vám taskbar ve stromu? Můžete si nastavit tradiční taskbar (podobný mIRC) v Nastavení taskbaru.
+22=Můžete kopírovat text z okna do schránky pouhým označením myší. Pokud podržíte Shift, budou zkopírovány i barevné kódy.
+23=Můžete zkopírovat text kanálu nebo query jen jeho pouhým vybráním. Pokud podržíte Shift, tak se zkopírují i barvy.
+24=Toto je poslední tip. Můžete přidat vlastní tipy - Mrkněte na <b>/help tip.open</b>. Klidně pošlete více tipů (v libovolném jazyce) na <b>trisk-kvirc(at)quasarnet.org</b>.
diff --git a/src/modules/tip/libkvitip_it.kvc b/src/modules/tip/libkvitip_it.kvc
new file mode 100644
index 00000000..edabad68
--- /dev/null
+++ b/src/modules/tip/libkvitip_it.kvc
@@ -0,0 +1,28 @@
+[KVIrc]
+uNextTip=0
+uNumTips=25
+TranslatorHint=This-file-MUST-be-encoded-in-UTF8
+0=Puoi aprire connessioni verso server multipli: scegli "Nuovo IRC Context" dal menu KVIrc.<br>Il vecchio metodo di una finestra per connessione ovviamente ancora supportato: scegli "Nuova finestra" dallo stesso menù
+1=IPv6 ora è supportato completamente, anche per le connessioni DCC.<br>Il comando è <b>/server -i &lt;nomeserver&gt;</b> :)
+2=KVIrc supporta crittazione SSL.<br>Le connessioni IRC crittate con SSL possono essere stabilite usando <b>/server -s</b>, e connessioni DCC usando <b>/dcc.chat -s</b><br>Funziona anche usando IPv6.
+3=Un <b>contesto IRC</b> è un set di risorse che dialogano con una singola connessione server. Ha associato una finestra <b>Console</b> che mostra i messaggi di sistema e del server.
+4=KVIrc è un'applicazione altamente modulare. I moduli sono caricati e scaricati trasparentemente all'utente (ed anche allo scripter!). Puoi anche scrivere i tuoi moduli personali che estendono il linguaggio di scripting o aggiungono altre funzionalità.
+5=Il modulo <b>gnutella</b> è stato rimosso dai sorgenti di KVIrc ed è ora distribuito in un pacchetto separato.
+6=KVIrc supporta diversi gestori per lo stesso evento. Questo permette di avere diversi script installati allo stesso momento, evitare collisioni tra gestori ed aiutare ad aggiungere/rimuovere e attivare/disattivare gli script.
+7=KVIrc supporta gli URL (Uniform Resource Locator) <b>irc://</b>. Lancia il comando:<br><b>kvirc irc://irc.tuoserver.org:6667/canale</b><br> per connettere a quel server.<br>La sintassi generale è:<br><b>irc[6]://&lt;nome-server&gt;[:&lt;porta&gt;][/[&lt;canale&gt;[?&lt;password&gt;]]]</b>
+8=L'eseguibile KVIrc agisce come il comando "netscape -remote", se c'è già un'istanza di KVIrc avviata, i parametri a linea di comando saranno passato a quell'istanza usando IPC. Puoi sovrascrivere questo comportamento con l'opzione <b>-f</b>.
+9=KVIrc può essere il tuo gestore del browser per gli URL <b>irc://</b>. Se KVIrc ha il supporto KDE, dovresti poterlo lanciare semplicemente scrivendo un URL <b>irc://</b> nella barra degli URL di Konqueror.<br>Prova <b>irc://irc.freenode.net/kvirc</b> :)
+10=Gli URL possono anche essere fatti da server IRC IPv6, la sintassi seguente funzionerà in questo caso:<br><b>irc6://&lt;nome-server-ipv6&gt;[:&lt;porta&gt;][/[&lt;canale&gt;[?&lt;password&gt;]]]</b>
+11=Puoi navigare tra le finestre premendo <b>Ctrl+Sinistra/Destra</b>. <b>Alt+Sinistra/Destra</b> cambia solo finestra nel contesto corrente.
+12=Un metodo veloce per connettere a un server in un nuovo contesto IRC è <b>/server -n &lt;nomeserver&gt;</b>
+13=KVIrc è portabile tra diverse macchine UNIX (compreso Mac) e Windows. Se sei un bravo scripter, anche i tuoi script saranno portabili!
+14=Vuoi entrare in un canale automaticamente alla connessione?<br>Facile!<br>Clicca su "Avanzate" nella configurazione del server e aggiungi il canale nella scheda "Entra nei Canali". Per qualcosa che funzioni per ogni server, prova <b>/event(OnIrc,autojoin){ join #tuocanale; }</b>
+15=Sai cos'è un avatar? Prova <b>/help avatar</b>
+16=La pagina di configurazione delle DCC ha un sacco di opzioni che possono aiutarti a risolvere i problemi di connessione più comuni. Le persone dietro un firewall potrebbero anche volere inviare dei dati. E' giusto una questione di configurazione :)
+17=C'è un modulo separato per la compatibilità con OpenNAP (<b>opennap</b>) che abiita le chat basate su OpenNAP con KVIrc.
+18=KVIrc supporta diverse codifiche a 8-bit. Puoi "parlare" russo KOI8-R su un canale e giapponese in un altro con la stessa connessione (e dei font appropriati). Noi incoraggiamo fortemente l'uso di <b>Unicode</b> (UTF-8), che supporta quasi tutte le lingue del mondo.
+19=Per evitare trasferimenti DCC eccessivi, è raccomandato che metti il tuo avatar sul Web. Puoi anche usare una qualsiasi immagine sul Web come avatar.<br><b>/avatar #tuocanale http://sito.com/immagini/immagine.png</b> funzionerà!
+20=KVIrc ha un client HTTP integrato, e puoi scaricare file dal Web usando il comando <b>/http.get</b>.
+21=Non ti piacciono le finestre disposte ad albero? Puoi optare per una visualizzazione tradizionale (simile a mIRC) nella pagina di configurazione delle finestre nelle preferenze.
+22=Puoi copiare il testo dalla finestra di chat agli appunti semplicemente selezionandolo col mouse. Se tieni anche premuto lo Shift verranno copiati anche i codici colore.
+23=Questo è l'ultimo suggerimento. Puoi aggiungere i tuoi suggerimenti personali - Prova <b>/help tip.open</b>. Sentiti libero di mandare nuovi suggerimenti (in qualsiasi lingua) a <b>trisk-kvirc(at)quasarnet.org</b>.
diff --git a/src/modules/tip/libkvitip_ru.kvc b/src/modules/tip/libkvitip_ru.kvc
new file mode 100644
index 00000000..a9f982f6
--- /dev/null
+++ b/src/modules/tip/libkvitip_ru.kvc
@@ -0,0 +1,29 @@
+[KVIrc]
+uNextTip=0
+uNumTips=25
+TranslatorHint=This-file-MUST-be-encoded-in-UTF8
+0=Вы можете скопировать текст из окна в буфер обмена просто выделив его мышью. Если удерживать нажатым Shift, то коды цветов также будут скопированы.
+1=Если вы хотите использовать озвучивание событий в KVIrc, откройте редактор событий, добавьте на нужные события обработчики и впишите в них <b>snd.play /путь/к/звуковому/файлу</b>. также для некоторых событий вы можете просто установить звук, указав звуковой файл в диалоге опций, на странице Общие настройки->Звуки.
+2=IPv6 теперь полностью поддерживается, даже для DCC передач.<br><b>/server -i &lt;servername&gt;</b> команда. :)
+3=KVIrc поддерживает SSL шифрование.<br>SSL шифрованные IRC соединения можно установить, используя <b>/server -s</b>, и DCC соединения используя <b>/dcc.chat -s</b><br>Это также работает через IPv6.
+4=<b>IRC контекст</b> это ресурсы, которые относятся только к одному соединению с сервером. У него есть связанное окно <b>Консоль</b>, которое отображает сообщения системы и сервера.
+5=KVIrc является полностью модульным приложением. Модули загружаются и выгружаются прозрачно для пользователя (даже в скриптах!). Вы можете также писать свои собственные модули, которые расширяют скриптовый язык или добавляют новые возможности.
+6=KVIrc поддерживает пространства имен (namespaces), которые позволяют скриптерам не забититься о том, что имена созданных ими команд будут конфликтовать со скриптами других авторов.
+7=KVIrc поддерживает множественные обработчики для каждого события. Это позволяет использовать множество сценариев установленных в одно и то же время, исключает конфликты обработчиков, и помогает удалять/добавлять и включать/выключать секции сценариев.
+8=KVIrc поддерживает <b>irc://</b> Uniform Resource Locator (URL). Выполните команду: <br><b>kvirc irc://irc.yourserver.org:6667/channel</b><br> для подключения к серверу. Общий синтаксис:<br><b>irc[6]://&lt;имя.сервера&gt;[:&lt;порт&gt;][/[&lt;канал&gt;[?&lt;пароль&gt;]]]</b>
+9=Запуск KVIrc действует подобно команде <br>"netscape -remote", если KVIrc уже запущен параметры командной строки передаются в запущеное приложение через IPC. Вы можете отменить это используя ключ <b>-f</b>.
+10=KVIrc может быть вашим обработчиком протокола <b>irc://</b> в КДЕ. Если KVIrc собран с поддержкой KDE, вы можете запустить его просто набрав <b>irc://</b> URL в строке адреса Конкверора.<br>Например <b>irc://irc.freenode.net/kvirc</b> :)
+11=URL-ы могут быть оформлены и для IPv6 IRC серверов с помощью следующего синтаксиса:<br><b>irc6://&lt;ipv6-сервер&gt;[:&lt;порт&gt;][/[&lt;канал&gt;[?&lt;пароль&gt;]]]</b>
+12=Вы можете переключаться между окнами с помощью <b>Ctrl+Left/Right</b>. <b>Alt+Left/Right</b> - по циклу только между окнами текущего контекста.
+13=Быстрый способ для подключения к серверу в новом контексте IRC <b>/server -n &lt;имясервера&gt;</b>
+14=KVIrc является мультиплатформеннм приложением - существуют сборки под Unix, Windows и Mac. Если вы будете правильно писать сценарии, то они тоже будут портируемы!
+15=Хотите автоматически входить на канал при коннекте? Нет ничего проще!<br>Кликните на кнопке "Дополнительно" в настройках сервера и добавьте канал к списку на вкладке "Входить на каналы"
+16=Вы не знаете как пользоваться аватаром? Наберите <b>/help avatar</b>
+17=Секция настроек DCC имеет множество опций, которые помогут вам решить разные проблемы, возникающие при использовании DCC соединений. Даже если вы находитесь за фаерволом, то тоже сможете передавать данные. Всё дело в правильных настройках. :)
+18=KVIrc поддерживает множество 8-битных кодировок. Вы можете на одном канале "разговаривать" по русски в KOI8-R, а на другом по японски (если у вас имеются соответствующие шрифты ). Мы очень рекомендуем вам использовать <b>Unicode</b> (UTF-8), который поддерживает практически все языки мира.
+19=Чтобы избежать дополнительного траффика DCC, мы рекомендуем использовать аватары, находящиеся в интернете.<br><b>/avatar #yourchan http://funnyhost.com/funny/funny.png</b> будет работать!
+20=KVIrc имеет встроенный клиент HTTP, и вы можете загрузить файлы из интернета используя команду <b>/http.get</b>.
+21=Вам не нравится окно с деревом панели задач? Вы можете выбрать традиционную панель задач (такую же как в mIRC) в секции настроек панели задач.
+22=Вы можете открыть соединения для многих серверов в одном окне KVIrc, просто выберите "Новый IRC контекст" в меню KVIrc.
+23=KVIrc имеет встроенный гибкий механизм идентификации на NickServ. Если вы заинтересованы в его использовании, но не можете настроить самостоятельно, советуем прочитать инструкции на сайте http://www.kvirc.ru в разделе статьи.
+24=Это последний совет. Вы можете добавлять свои собственные советы - наберите <b>/help tip.open</b>. Вы можете отослать свои советы (на любом языке) по адресу <b>alexey@kvirc.ru</b>.