• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdesdk API Reference
  • KDE Home
  • Contact Us
 

kompare

  • sources
  • kde-4.14
  • kdesdk
  • kompare
kompareurldialog.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  kompareurldialog.cpp
3  --------------------
4  begin : Sun Mar 4 2001
5  Copyright 2001-2005,2009 Otto Bruggeman <bruggie@gmail.com>
6  Copyright 2001-2003 John Firebaugh <jfirebaugh@kde.org>
7  Copyright 2007 Kevin Kofler <kevin.kofler@chello.at>
8 ****************************************************************************/
9 
10 /***************************************************************************
11 **
12 ** This program is free software; you can redistribute it and/or modify
13 ** it under the terms of the GNU General Public License as published by
14 ** the Free Software Foundation; either version 2 of the License, or
15 ** (at your option) any later version.
16 **
17 ***************************************************************************/
18 #include "kompareurldialog.h"
19 #include <QShowEvent>
20 
21 #include <QGroupBox>
22 
23 #include <kapplication.h>
24 #include <kglobal.h>
25 #include <klocale.h>
26 #include <kmessagebox.h>
27 #include <kurlcombobox.h>
28 #include <kurlrequester.h>
29 
30 #include "diffpage.h"
31 #include "diffsettings.h"
32 #include "filespage.h"
33 #include "filessettings.h"
34 #include "viewpage.h"
35 #include "viewsettings.h"
36 
37 KompareURLDialog::KompareURLDialog( QWidget *parent, Qt::WFlags flags )
38  : KPageDialog( parent, flags )
39 {
40  setFaceType( List );
41  KSharedConfig::Ptr cfg = KGlobal::config();
42 
43  m_filesPage = new FilesPage();
44  KPageWidgetItem *filesItem = addPage( m_filesPage, i18n( "Files" ) );
45  filesItem->setIcon( KIcon( "text-plain" ) );
46  filesItem->setHeader( i18n( "Here you can enter the files you want to compare." ) );
47  m_filesSettings = new FilesSettings( this );
48  m_filesSettings->loadSettings( cfg.data() );
49  m_filesPage->setSettings( m_filesSettings );
50 
51  m_diffPage = new DiffPage();
52  KPageWidgetItem *diffItem = addPage( m_diffPage, i18n( "Diff" ) );
53  diffItem->setIcon( KIcon( "text-x-patch" ) );
54  diffItem->setHeader( i18n( "Here you can change the options for comparing the files." ) );
55  m_diffSettings = new DiffSettings( this );
56  m_diffSettings->loadSettings( cfg.data() );
57  m_diffPage->setSettings( m_diffSettings );
58 
59  m_viewPage = new ViewPage();
60  KPageWidgetItem *viewItem = addPage( m_viewPage, i18n( "Appearance" ) );
61  viewItem->setIcon( KIcon( "preferences-desktop-theme" ) );
62  viewItem->setHeader( i18n( "Here you can change the options for the view." ) );
63  m_viewSettings = new ViewSettings( this );
64  m_viewSettings->loadSettings( cfg.data() );
65  m_viewPage->setSettings( m_viewSettings );
66 
67  adjustSize();
68 
69  showButtonSeparator( true );
70 
71  connect( m_filesPage->firstURLRequester(), SIGNAL( textChanged( const QString& ) ),
72  this, SLOT( slotEnableOk() ) );
73  connect( m_filesPage->secondURLRequester(), SIGNAL( textChanged( const QString& ) ),
74  this, SLOT( slotEnableOk() ) );
75 
76 }
77 
78 KompareURLDialog::~KompareURLDialog()
79 {
80 }
81 
82 void KompareURLDialog::showEvent ( QShowEvent * event )
83 {
84  if ( !event->spontaneous () )
85  {
86  slotEnableOk();
87  }
88 }
89 
90 void KompareURLDialog::slotButtonClicked( int button )
91 {
92  if ( button == KDialog::Cancel )
93  {
94  reject();
95  return;
96  }
97  // BUG: 124121 File with filenames to be excluded does not exist so diff complains and no diffs are generated
98  kDebug(8102) << "Test to see if the file is an actual file that is given in the file with filenames to exclude field" << endl;
99  if ( m_diffPage->m_excludeFileNameGroupBox->isChecked() )
100  {
101  kDebug(8102) << "Ok the checkbox is active..." << endl;
102  if ( QFileInfo( m_diffPage->m_excludeFileURLComboBox->currentText() ).isDir() )
103  {
104  kDebug(8102) << "Don't enter directory names where filenames are expected..." << endl;
105  KMessageBox::sorry( this, i18n( "File used for excluding files cannot be found, please specify another file." ) );
106  reject();
107  return;
108  }
109  }
110  // Room for more checks for invalid input
111 
112  m_filesPage->setURLsInComboBoxes();
113 
114  KSharedConfig::Ptr cfg = KGlobal::config();
115 
116  m_filesPage->apply();
117  m_diffPage->apply();
118  m_viewPage->apply();
119 
120  m_filesSettings->saveSettings( cfg.data() );
121  m_diffSettings->saveSettings( cfg.data() );
122  m_viewSettings->saveSettings( cfg.data() );
123 
124  cfg->sync();
125 
126  accept();
127 }
128 
129 void KompareURLDialog::slotEnableOk()
130 {
131  enableButtonOk( !m_filesPage->firstURLRequester()->url().isEmpty() &&
132  !m_filesPage->secondURLRequester()->url().isEmpty() );
133 }
134 
139 KUrl KompareURLDialog::getFirstURL() const
140 {
141  return KUrl( m_filesPage->firstURLRequester()->url() );
142 }
143 
148 KUrl KompareURLDialog::getSecondURL() const
149 {
150  return KUrl( m_filesPage->secondURLRequester()->url() );
151 }
152 
157 QString KompareURLDialog::encoding() const
158 {
159  return m_filesPage->encoding();
160 }
161 
162 void KompareURLDialog::setFirstGroupBoxTitle( const QString& title )
163 {
164  m_filesPage->setFirstGroupBoxTitle( title );
165 }
166 
167 void KompareURLDialog::setSecondGroupBoxTitle( const QString& title )
168 {
169  m_filesPage->setSecondGroupBoxTitle( title );
170 }
171 
172 void KompareURLDialog::setGroup( const QString& groupName )
173 {
174  m_filesSettings->setGroup( groupName );
175  m_filesSettings->loadSettings( KGlobal::config().data() );
176  m_filesPage->setSettings( m_filesSettings );
177 }
178 
179 void KompareURLDialog::setFirstURLRequesterMode( unsigned int mode )
180 {
181  m_filesPage->setFirstURLRequesterMode( mode );
182 }
183 
184 void KompareURLDialog::setSecondURLRequesterMode( unsigned int mode )
185 {
186  m_filesPage->setSecondURLRequesterMode( mode );
187 }
188 
189 #include "kompareurldialog.moc"
190 
KompareURLDialog::encoding
QString encoding() const
Returns the encoding.
Definition: kompareurldialog.cpp:157
QWidget
KPageDialog
FilesSettings::loadSettings
virtual void loadSettings(KConfig *config)
Definition: filessettings.cpp:33
DiffPage::setSettings
void setSettings(DiffSettings *)
Definition: diffpage.cpp:67
ViewPage
Definition: viewpage.h:33
FilesPage::setSettings
virtual void setSettings(FilesSettings *settings)
Definition: filespage.cpp:128
KompareURLDialog::getFirstURL
KUrl getFirstURL() const
Returns the first URL, which was entered.
Definition: kompareurldialog.cpp:139
FilesPage::setFirstURLRequesterMode
void setFirstURLRequesterMode(unsigned int mode)
Definition: filespage.cpp:118
DiffPage
Definition: diffpage.h:40
viewpage.h
KompareURLDialog::showEvent
void showEvent(QShowEvent *event)
Definition: kompareurldialog.cpp:82
FilesPage::apply
virtual void apply()
No descriptions.
Definition: filespage.cpp:144
QWidget::adjustSize
void adjustSize()
DiffPage::apply
virtual void apply()
No descriptions.
Definition: diffpage.cpp:111
KompareURLDialog::getSecondURL
KUrl getSecondURL() const
Returns the second URL, which was entered.
Definition: kompareurldialog.cpp:148
filespage.h
FilesSettings
Definition: filessettings.h:29
QGroupBox::isChecked
bool isChecked() const
ViewSettings::loadSettings
virtual void loadSettings(KConfig *config)
Definition: viewsettings.cpp:49
FilesPage::setFirstGroupBoxTitle
void setFirstGroupBoxTitle(const QString &title)
Definition: filespage.cpp:99
QShowEvent
FilesPage::setURLsInComboBoxes
void setURLsInComboBoxes()
Definition: filespage.cpp:109
KompareURLDialog::setSecondURLRequesterMode
void setSecondURLRequesterMode(unsigned int mode)
Definition: kompareurldialog.cpp:184
ViewPage::setSettings
void setSettings(ViewSettings *)
Definition: viewpage.cpp:163
kompareurldialog.h
KompareURLDialog::setSecondGroupBoxTitle
void setSecondGroupBoxTitle(const QString &title)
Definition: kompareurldialog.cpp:167
QEvent::spontaneous
bool spontaneous() const
KompareURLDialog::setFirstGroupBoxTitle
void setFirstGroupBoxTitle(const QString &title)
Definition: kompareurldialog.cpp:162
QString
Qt::WFlags
typedef WFlags
ViewPage::apply
virtual void apply()
No descriptions.
Definition: viewpage.cpp:187
QSplitterHandle::event
virtual bool event(QEvent *event)
QFileInfo
FilesPage::encoding
QString encoding() const
Definition: filespage.cpp:94
KompareURLDialog::KompareURLDialog
KompareURLDialog(QWidget *parent=0, Qt::WFlags flags=0)
Definition: kompareurldialog.cpp:37
KompareURLDialog::setFirstURLRequesterMode
void setFirstURLRequesterMode(unsigned int mode)
Definition: kompareurldialog.cpp:179
FilesSettings::setGroup
void setGroup(const QString &groupName)
Definition: filessettings.cpp:55
FilesPage::setSecondGroupBoxTitle
void setSecondGroupBoxTitle(const QString &title)
Definition: filespage.cpp:104
DiffPage::m_excludeFileNameGroupBox
QGroupBox * m_excludeFileNameGroupBox
Definition: diffpage.h:90
ViewSettings
Definition: viewsettings.h:29
DiffPage::m_excludeFileURLComboBox
KUrlComboBox * m_excludeFileURLComboBox
Definition: diffpage.h:91
viewsettings.h
ViewSettings::saveSettings
virtual void saveSettings(KConfig *config)
Definition: viewsettings.cpp:64
KompareURLDialog::slotButtonClicked
virtual void slotButtonClicked(int button)
Definition: kompareurldialog.cpp:90
FilesPage
Definition: filespage.h:33
KompareURLDialog::setGroup
void setGroup(const QString &groupName)
Definition: kompareurldialog.cpp:172
diffpage.h
QObject::connect
bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
QObject::parent
QObject * parent() const
FilesPage::secondURLRequester
KUrlRequester * secondURLRequester() const
Definition: filespage.cpp:89
KompareURLDialog::~KompareURLDialog
~KompareURLDialog()
Definition: kompareurldialog.cpp:78
filessettings.h
FilesSettings::saveSettings
virtual void saveSettings(KConfig *config)
Definition: filessettings.cpp:44
FilesPage::firstURLRequester
KUrlRequester * firstURLRequester() const
Definition: filespage.cpp:84
FilesPage::setSecondURLRequesterMode
void setSecondURLRequesterMode(unsigned int mode)
Definition: filespage.cpp:123
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:40:01 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

kompare

Skip menu "kompare"
  • Main Page
  • Namespace List
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • umbrello
  •   umbrello

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal