本文整理汇总了C++中KateMainWindow类的典型用法代码示例。如果您正苦于以下问题:C++ KateMainWindow类的具体用法?C++ KateMainWindow怎么用?C++ KateMainWindow使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了KateMainWindow类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: activeMainWindow
bool KateApp::openURL (const KURL &url, const QString &encoding, bool isTempFile)
{
KateMainWindow *mainWindow = activeMainWindow ();
if (!mainWindow)
return false;
QTextCodec *codec = encoding.isEmpty() ? 0 : QTextCodec::codecForName(encoding.latin1());
kdDebug () << "OPEN URL "<< encoding << endl;
// this file is no local dir, open it, else warn
bool noDir = !url.isLocalFile() || !QDir (url.path()).exists();
if (noDir)
{
// open a normal file
if (codec)
mainWindow->viewManager()->openURL( url, codec->name(), true, isTempFile );
else
mainWindow->viewManager()->openURL( url, QString::null, true, isTempFile );
}
else
KMessageBox::sorry( mainWindow,
i18n("The file '%1' could not be opened: it is not a normal file, it is a folder.").arg(url.url()) );
return true;
}
示例2: activeMainWindow
KTextEditor::Document* KateApp::openDocUrl (const KUrl &url, const QString &encoding, bool isTempFile)
{
KateMainWindow *mainWindow = activeMainWindow ();
if (!mainWindow)
return 0;
QTextCodec *codec = encoding.isEmpty() ? 0 : QTextCodec::codecForName(encoding.toLatin1());
// this file is no local dir, open it, else warn
bool noDir = !url.isLocalFile() || !QFileInfo (url.toLocalFile()).isDir();
KTextEditor::Document *doc=0;
if (noDir)
{
// show no errors...
documentManager()->setSuppressOpeningErrorDialogs (true);
// open a normal file
if (codec)
doc=mainWindow->viewManager()->openUrl( url, codec->name(), true, isTempFile);
else
doc=mainWindow->viewManager()->openUrl( url, QString(), true, isTempFile );
// back to normal....
documentManager()->setSuppressOpeningErrorDialogs (false);
}
else
KMessageBox::sorry( mainWindow,
i18n("The file '%1' could not be opened: it is not a normal file, it is a folder.", url.url()) );
return doc;
}
示例3: activeMainWindowNumber
uint KateAppDCOPIface::activeMainWindowNumber ()
{
KateMainWindow *win = m_app->activeMainWindow();
if (win)
return win->mainWindowNumber ();
return 0;
}
示例4: mainWindow
DCOPRef KateAppDCOPIface::mainWindow (uint n)
{
KateMainWindow *win = m_app->mainWindow(n);
if (win)
return DCOPRef (win->dcopObject ());
return DCOPRef ();
}
示例5: mainWindow
QDBusObjectPath KateAppAdaptor::mainWindow (uint n)
{
KateMainWindow *win = m_app->mainWindow(n);
if (win)
return QDBusObjectPath (win->dbusObjectPath ());
return QDBusObjectPath ();
}
示例6: activeMainWindowNumber
uint KateAppAdaptor::activeMainWindowNumber ()
{
KateMainWindow *win = m_app->activeMainWindow();
if (win)
return win->mainWindowNumber ();
return 0;
}
示例7: activeMainWindow
QDBusObjectPath KateAppAdaptor::activeMainWindow ()
{
KateMainWindow *win = m_app->activeMainWindow();
if (win)
return QDBusObjectPath (win->dbusObjectPath());
return QDBusObjectPath ();
}
示例8: KateMainWindow
KateMainWindow *KateApp::newMainWindow (KConfig *sconfig_, const QString &sgroup_)
{
KConfig *sconfig = sconfig_ ? sconfig_ : KGlobal::config().data();
QString sgroup = !sgroup_.isEmpty() ? sgroup_ : "MainWindow0";
KateMainWindow *mainWindow = new KateMainWindow (sconfig, sgroup);
mainWindow->show ();
return mainWindow;
}
示例9: KateMainWindow
KateMainWindow *KateApp::newMainWindow (KConfig *sconfig, const QString &sgroup)
{
KateMainWindow *mainWindow = new KateMainWindow (sconfig, sgroup);
m_mainWindows.push_back (mainWindow);
if ((mainWindows() > 1) && m_mainWindows[m_mainWindows.count()-2]->viewManager()->activeView())
mainWindow->viewManager()->activateView ( m_mainWindows[m_mainWindows.count()-2]->viewManager()->activeView()->getDoc()->documentNumber() );
else if ((mainWindows() > 1) && (m_docManager->documents() > 0))
mainWindow->viewManager()->activateView ( (m_docManager->document(m_docManager->documents()-1))->documentNumber() );
else if ((mainWindows() > 1) && (m_docManager->documents() < 1))
mainWindow->viewManager()->openURL ( KURL() );
mainWindow->show ();
return mainWindow;
}
示例10: activate
void KateAppAdaptor::activate ()
{
KateMainWindow *win = m_app->activeMainWindow();
if (!win)
return;
win->show();
win->activateWindow();
win->raise();
#ifdef Q_WS_X11
KWindowSystem::forceActiveWindow (win->winId ());
KWindowSystem::raiseWindow (win->winId ());
KWindowSystem::demandAttention (win->winId ());
#endif
}
示例11: args
bool KateAppCommands::exec(KTextEditor::View *view, const QString &cmd, QString &msg)
{
QStringList args(cmd.split( QRegExp("\\s+"), QString::SkipEmptyParts)) ;
QString command( args.takeFirst() );
KateMainWindow *mainWin = KateApp::self()->activeMainWindow();
if (re_write.exactMatch(command)) { //TODO: handle writing to specific file
if (!re_write.cap(1).isEmpty()) { // [a]ll
KateDocManager::self()->saveAll();
msg = i18n("All documents written to disk");
} else {
view->document()->documentSave();
msg = i18n("Document written to disk");
}
}
// Other buffer commands are implemented by the KateFileTree plugin
else if (re_close.exactMatch(command)) {
QTimer::singleShot(0, mainWin, SLOT(slotFileClose()));
}
else if (re_quit.exactMatch(command)) {
if (!re_quit.cap(2).isEmpty()) { // a[ll]
if (!re_quit.cap(1).isEmpty()) { // [w]rite
KateDocManager::self()->saveAll();
}
QTimer::singleShot(0, mainWin, SLOT(slotFileQuit()));
} else {
if (!re_quit.cap(1).isEmpty() && view->document()->isModified()) { // [w]rite
view->document()->documentSave();
}
if (mainWin->viewManager()->count() > 1) {
QTimer::singleShot(0, mainWin->viewManager(), SLOT(slotCloseCurrentViewSpace()));
} else {
if (KateDocManager::self()->documents() > 1)
QTimer::singleShot(0, mainWin, SLOT(slotFileClose()));
else
QTimer::singleShot(0, mainWin, SLOT(slotFileQuit()));
}
}
} else if (re_exit.exactMatch(command)) {
if (!re_exit.cap(1).isEmpty()) { // a[ll]
KateDocManager::self()->saveAll();
QTimer::singleShot(0, mainWin, SLOT(slotFileQuit()));
} else {
if (view->document()->isModified()) {
view->document()->documentSave();
}
if (KateDocManager::self()->documents() > 1)
QTimer::singleShot(0, mainWin, SLOT(slotFileClose()));
else
QTimer::singleShot(0, mainWin, SLOT(slotFileQuit()));
}
QTimer::singleShot(0, mainWin, SLOT(slotFileQuit()));
}
else if (re_edit.exactMatch(command)) {
QString argument = args.join(QString(' '));
if (argument.isEmpty() || argument == "!") {
view->document()->documentReload();
} else {
KUrl base = mainWin->activeDocumentUrl();
KUrl url;
KUrl arg2path(argument);
if (base.isValid()) { // first try to use the same path as the current open document has
url = KUrl(base.resolved(arg2path)); //resolved handles the case where the args is a relative path, and is the same as using KUrl(args) elsewise
} else { // else use the cwd
url = KUrl(KUrl(QDir::currentPath() + "/").resolved(arg2path)); // + "/" is needed because of http://lists.qt.nokia.com/public/qt-interest/2011-May/033913.html
}
QFileInfo file( url.toLocalFile() );
KTextEditor::Document *doc = KateDocManager::self()->findDocument( url );
if (doc) {
mainWin->viewManager()->activateView( doc );
} else if (file.exists()) {
mainWin->viewManager()->openUrl( url, QString(), true );
} else {
mainWin->viewManager()->openUrl( KUrl(), QString(), true )->saveAs ( url );
}
}
}
else if (re_new.exactMatch(command)) {
if (re_new.cap(1) == "v") { // vertical split
mainWin->viewManager()->slotSplitViewSpaceVert();
} else { // horizontal split
mainWin->viewManager()->slotSplitViewSpaceHoriz();
}
mainWin->viewManager()->slotDocumentNew();
}
else if (command == "enew") {
mainWin->viewManager()->slotDocumentNew();
}
else if (re_split.exactMatch(command)) {
mainWin->viewManager()->slotSplitViewSpaceHoriz();
}
else if (re_vsplit.exactMatch(command)) {
mainWin->viewManager()->slotSplitViewSpaceVert();
} else if (re_only.exactMatch(command)) {
mainWin->viewManager()->slotCloseOtherViews();
}
//.........这里部分代码省略.........
示例12: setObjectName
KateMainWindow::KateMainWindow (KConfig *sconfig, const QString &sgroup)
: KateMDI::MainWindow (0)
{
setObjectName((QString("__KateMainWindow#%1").arg(uniqueID)).toLatin1());
// first the very important id
myID = uniqueID;
uniqueID++;
new KateMainWindowAdaptor( this );
m_dbusObjectPath = "/MainWindow/" + QString::number( myID );
QDBusConnection::sessionBus().registerObject( m_dbusObjectPath, this );
m_modignore = false;
// here we go, set some usable default sizes
if (!initialGeometrySet())
{
int scnum = QApplication::desktop()->screenNumber(parentWidget());
QRect desk = QApplication::desktop()->screenGeometry(scnum);
QSize size;
// try to load size
if (sconfig)
{
KConfigGroup cg( sconfig, sgroup );
size.setWidth (cg.readEntry( QString::fromLatin1("Width %1").arg(desk.width()), 0 ));
size.setHeight (cg.readEntry( QString::fromLatin1("Height %1").arg(desk.height()), 0 ));
}
// if thats fails, try to reuse size
if (size.isEmpty())
{
// first try to reuse size known from current or last created main window ;=)
if (KateApp::self()->mainWindows () > 0)
{
KateMainWindow *win = KateApp::self()->activeMainWindow ();
if (!win)
win = KateApp::self()->mainWindow (KateApp::self()->mainWindows () - 1);
size = win->size();
}
else // now fallback to hard defaults ;)
{
// first try global app config
KConfigGroup cg( KGlobal::config(), "MainWindow" );
size.setWidth (cg.readEntry( QString::fromLatin1("Width %1").arg(desk.width()), 0 ));
size.setHeight (cg.readEntry( QString::fromLatin1("Height %1").arg(desk.height()), 0 ));
if (size.isEmpty())
size = QSize (qMin (700, desk.width()), qMin(480, desk.height()));
}
resize (size);
}
}
// start session restore if needed
startRestore (sconfig, sgroup);
m_mainWindow = new Kate::MainWindow (this);
// setup most important actions first, needed by setupMainWindow
setupImportantActions ();
// setup the most important widgets
setupMainWindow();
// setup the actions
setupActions();
setStandardToolBarMenuEnabled( true );
setXMLFile( "kateui.rc" );
createShellGUI ( true );
//kDebug() << "****************************************************************************" << sconfig;
// register mainwindow in app
KateApp::self()->addMainWindow (this);
// enable plugin guis
KatePluginManager::self()->enableAllPluginsGUI (this, sconfig);
// caption update
for (uint i = 0; i < KateDocManager::self()->documents(); i++)
slotDocumentCreated (KateDocManager::self()->document(i));
connect(KateDocManager::self(), SIGNAL(documentCreated(KTextEditor::Document*)), this, SLOT(slotDocumentCreated(KTextEditor::Document*)));
readOptions();
if (sconfig)
m_viewManager->restoreViewConfiguration (KConfigGroup(sconfig, sgroup) );
finishRestore ();
fileOpenRecent->loadEntries( KConfigGroup(sconfig, "Recent Files" ) );
setAcceptDrops(true);
//.........这里部分代码省略.........