Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

140 lines (117 sloc) 3.877 kb
* Copyright (C) 2009, 2010, 2011 Nicolas Bonnefon and other contributors
* This file is part of glogg.
* glogg 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 3 of the License, or
* (at your option) any later version.
* glogg is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with glogg. If not, see <>.
#include <QMainWindow>
#include "crawlerwidget.h"
#include "infoline.h"
class QAction;
class RecentFiles;
class MenuActionToolTipBehavior;
// Main window of the application, creates menus, toolbar and
// the CrawlerWidget
class MainWindow : public QMainWindow
// Loads the initial file (parameter passed or from config file)
void loadInitialFile( QString fileName );
void closeEvent( QCloseEvent* event );
// Drag and drop support
void dragEnterEvent( QDragEnterEvent* event );
void dropEvent( QDropEvent* event );
private slots:
void open();
void openRecentFile();
void copy();
void find();
void reload();
void stop();
void filters();
void options();
void about();
void aboutQt();
// Change the view settings
void toggleOverviewVisibility( bool isVisible );
// Disable the follow mode checkbox and send the followSet signal down
void disableFollow();
// Update the line number displayed in the status bar.
// Must be passed as the internal (starts at 0) line number.
void lineNumberHandler( int line );
// Instructs the widget to update the loading progress gauge
void updateLoadingProgress( int progress );
// Instructs the widget to display the 'normal' status bar,
// without the progress gauge and with file info
void displayNormalStatus( bool success );
// Is emitted when new settings must be used
void optionsChanged();
// Is emitted when the 'follow' option is enabled/disabled
void followSet( bool checked );
void createActions();
void createMenus();
void createContextMenu();
void createToolBars();
void createStatusBar();
void createCrawler();
void createRecentFileToolTipTimer();
void readSettings();
void writeSettings();
bool loadFile( const QString& fileName );
void setCurrentFile( const QString& fileName );
void updateRecentFileActions();
QString strippedName( const QString& fullFileName ) const;
// Returns the size in human readable format
QString readableSize( qint64 size ) const;
SavedSearches *savedSearches;
CrawlerWidget *crawlerWidget;
RecentFiles& recentFiles;
QString loadingFileName;
QString currentFile;
QString previousFile;
enum { MaxRecentFiles = 5 };
QAction *recentFileActions[MaxRecentFiles];
MenuActionToolTipBehavior *recentFileActionBehaviors[MaxRecentFiles];
QAction *separatorAction;
QMenu *fileMenu;
QMenu *editMenu;
QMenu *viewMenu;
QMenu *toolsMenu;
QMenu *helpMenu;
InfoLine *infoLine;
QLabel* lineNbField;
QToolBar *toolBar;
QAction *openAction;
QAction *exitAction;
QAction *copyAction;
QAction *findAction;
QAction *overviewVisibleAction;
QAction *followAction;
QAction *reloadAction;
QAction *stopAction;
QAction *filtersAction;
QAction *optionsAction;
QAction *aboutAction;
QAction *aboutQtAction;
QIcon mainIcon_;
Jump to Line
Something went wrong with that request. Please try again.