Commit Graph

57 Commits

Author SHA1 Message Date
Robert Knight
5036d8cb00 Squashed commit of the following:
commit 99d61f9bdfe29347050162a5a675bb0c276bc1bf
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 20:45:45 2008 +0000

    Allow a normal frame around the table view in ManageProfilesDialog.  Works better with Oxygen style.

commit 7075de00d8cc88568e108e868e08d071d5aa7bcb
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 20:37:38 2008 +0000

    Change base class of ProfileItemDelegate from QItemDelegate to QStyledItemDelegate for better rendering.  Fix updates of favorite / non-favorite status in ManageProfilesDialog.  QVariant equality comparisons are not properly supported for custom types so QAbstractItemModel::match() has to be replaced with manual iteration through the rows.

commit 3baa3307473e037efd500ade7df37d2fd62c60d9
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 20:09:27 2008 +0000

    Remove unecessary deleteProfile() call.  Explicitly add new profiles to the SessionManager.  Mark the temporary profile in the EditProfileDialog as hidden.

commit 53d1e3515d3408c08ba4b019b5faceffae6b0f8a
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 20:02:28 2008 +0000

    Do not track deletion of temporary un-named profiles.

commit 55c69e15a4247319b0cff73691f072fef39684c9
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 20:01:25 2008 +0000

    Make SessionManager::addProfile() public.  Call it automatically in SessionManager::setFavorite() if the profile is not already known to the manager.  When a profile is deleted via SessionManager::deleteProfile() mark it as hidden so that it is not recreated on disk if later changed.  Add debugging in ~Profile to track deletion of profiles.

commit 7a028bac5846cd3689e3351ab139c6f372ca173e
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 19:41:22 2008 +0000

    Fix several signal/slot connections in ManageProfilesDialog after the SessionManager changes.

commit da7c7b4f939c17885cf0fbaa1fb93d2655021b83
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 19:36:57 2008 +0000

    Use a helper class to pop elements from recursion guard stack when a call to loadProfile() returns rather than requiring a manual call to recursionGuard.pop()

commit 14a993d15722ec5270de708154408896fd7418b8
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 19:12:20 2008 +0000

    Fix profiles not being loaded properly if their parent was a profile which had already been loaded.  Profile paths were not being taken off the recursion guard stack at one exit from loadProfile().

commit f946fc0cbde26cd816e3f1d172a5e5327ff3295b
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 19:01:06 2008 +0000

    Adapt Part to the SessionManager/Profile changes.

commit d3155ba0f6dc9ec0ca34a45b5787488c055dc4bf
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 18:55:05 2008 +0000

    Update MainWindow API documentation to reflect string key -> ref counted pointer change for profiles.

commit 5d546054c031ae6ee6915f2cc6bcf61dd4e03520
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Mar 22 18:53:16 2008 +0000

    Update SessionManager API documentation to reflect string key -> ref counted pointer change for profiles.

commit 856fdf37a5bd81711ff0db1b307b8736ef4ae34e
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu Mar 20 23:43:53 2008 +0000

    Fix assert.  Fall back to current locale's codec if a null pointer is passed to Emulation::setCodec()

commit 127e894d076061b991934adf84256b651bf31724
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu Mar 20 22:45:11 2008 +0000

    Replace string key for profiles with ref-counted profile pointer.

commit 53246e5bd4ffcec56ca0ff94730f9ef3946e3f4c
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu Mar 20 20:50:17 2008 +0000

    First step towards removing string keys as a means to reference profiles.  Change Profile base class from QObject to QSharedData and replace all usage of Profile* with KSharedPtr<Profile>

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=788936
2008-03-22 21:06:59 +00:00
Robert Knight
fb2aea2983 Fix double -> int conversion warning
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=783791
2008-03-09 15:50:33 +00:00
Robert Knight
aaf2492186 Reflect state of 'Smooth Fonts' option in preview label.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=781930
2008-03-03 22:33:18 +00:00
Robert Knight
18693e2c2b Add UI control to turn anti-aliasing on or off. 'Smooth fonts' checkbox added to Appearence tab of profile editor.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=781732
2008-03-03 17:00:06 +00:00
Robert Knight
08ec730013 Reduce code duplication. Change Profile::property(property).value<T>() to Profile::property<T>(), introduce helper ShouldApplyProperty class to simplify SessionManager::applyProfile()
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=781009
2008-03-01 20:43:07 +00:00
Bill Egert
49c2b3fccb As it turns out, drawRoundedRect() doesn't directly correlate to the defunct drawRoundRect().
Reverted.

Sorry Matthew Woehlke and others.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=777644
2008-02-21 02:47:17 +00:00
Bill Egert
8bf323e09b No longer use Obsolete Members for QPainter.
drawRoundRect() => drawRoundedRect()  (This function was introduced in Qt 4.4)
matrix() => worldTransform() 
setMatrix() => setWorldTransform()

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=776270
2008-02-17 18:36:37 +00:00
Robert Knight
bfa9e52acd Disable 'Enable flow control' option until it is implemented with the new KPtyProcess terminal connection.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=761923
2008-01-15 17:35:18 +00:00
Laurent Montel
69c3cbd967 Add existing icons
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=757953
2008-01-06 16:17:18 +00:00
Stephan Binner
dfac4ca329 i18n style guide fixes, the capitalization rules are explained at
http://developer.kde.org/documentation/standards/kde/style/basics/labels.html

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=757238
2008-01-04 14:51:24 +00:00
Robert Knight
d9cc96208f Fix Cancel button in 'Select Font' dialog having no effect. A side-effect of this commit is that the 'Select Font' dialog becomes modal. Ensure that the font preview label's text stays in sync with its font by listening for FontChange events and setting the text in response.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=755898
2008-01-02 11:17:09 +00:00
Robert Knight
46cfc108d3 * Replace all usage of qDebug() with kDebug(), since kDebug() provides information about
which part of the code the message came from and allows filtering of output
  using kdebugdialog
* Remove explicit creation of singleton classes SessionManager,ColorSchemeManager and
  KeyboardTranslatorManager and automate it with K_GLOBAL_STATIC.
  This ensures that the singleton destructors are called appropriately by KPart clients
  when they unload the libkonsolepart library.


svn path=/trunk/KDE/kdebase/apps/konsole/; revision=754334
2007-12-29 16:07:31 +00:00
Robert Knight
aa4d0f1276 Hide the 'Allow programs to resize terminal window' check box in the profile editor since the feature is not implemented yet.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=754304
2007-12-29 14:26:42 +00:00
Robert Knight
520ed31dbd Ensure that the color scheme preview is updated when changing the selection via the keyboard.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=750242
2007-12-18 23:46:03 +00:00
Robert Knight
9631700e32 Remove the non-working Defaults button from the Edit Profile dialog. Will be re-instated once there is working code to load and set the defaults.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=748994
2007-12-16 06:22:58 +00:00
Robert Knight
8171d4872f * Do not remove color schemes / key bindings from list if the
call to delete the file fails.
* Make deletion of color schemes, key bindings and profiles
  atomic operations from the point of view of outside classes.
* Fix various warning produced by the -Woverloaded-virtual flag.


svn path=/trunk/KDE/kdebase/apps/konsole/; revision=746168
2007-12-08 01:51:37 +00:00
Robert Knight
9863b5508b Bug fixes for the Appearance and Key Bindings tabs in the
Edit Profile dialog:

* Fix selection of color schemes and key bindings not being
  remembered after the color scheme/key binding list is changed
  (eg. due to adding a new color scheme or editing an existing one).

  This also fixes the preview not being updated when mousing outside 
  the list after adding a new color scheme.

  -> After updates to the color scheme / key bindings list the model
     was being deleted and a new model was created.  This caused the
     selection model to be changed without the signal-slot connections
     from the selection model to the dialog being re-established.

     This commit changes that so that the model is not replaced but
     simply cleared when the color scheme / key binding list is updated.

* Disable the Edit, Remove buttons on the Appearance and 
  Key Bindings tabs when there is no selection.
* Fix crash when clicking 'New' button on the Appearance tab
  if the color scheme list is empty.
* Fix crash when loading the Appearance tab if the color scheme
  associated with the profile does not exist
* Fix crash when loading the Key Bindings tab if the key binding
  associated with the profile does not exist
* Fix crash when attempting to load a color scheme with no name, 
  instead the color scheme is simply not loaded.
* Fix all colors except one being set to black when making changes 
  to a color scheme which was based on the default fallback color scheme.

  -> When creating a new array inside the ColorScheme class to hold color
     entries, initialize its elements with values from the default color
     array.

* Use qWarning() instead of qDebug() to print out error message if attempting
  to delete a color scheme fails.

* Minor formatting changes in Session.cpp,SessionController.h


Known bugs introduced by this commit:
    
* Attempting to create a new keyboard translator when no existing translator
  is selected will crash because KeyboardTranslator::defaultTranslator() has
  not been implemented yet.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=746071
2007-12-07 18:42:36 +00:00
David Faure
e73a71cf06 Using KFileDialog::getExistingDirectoryUrl, konsole doesn't need to link to libkfile anymore.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=740566
2007-11-23 14:12:27 +00:00
Jakub Stachowski
ac148385ec Only permit selection of monospaced fonts
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=738000
2007-11-17 16:20:28 +00:00
Craig Drummond
d844806527 Fix parentless dialogs
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=734552
2007-11-09 08:02:24 +00:00
Sebastian Kügler
37a7ecb434 Set preview slider's minimum fontsize to smallestReadableFont
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=723658
2007-10-10 10:29:20 +00:00
Robert Knight
6897127240 Delay the live preview of color schemes slightly. The cursor now has to hover above the same item for 300ms to make it trigger. This (hopefully) solves the bug report about the automatic preview being inadvertantly triggered while trying to do other things in the dialog.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=711856
2007-09-13 00:31:02 +00:00
Robert Knight
78084d2086 Remove the Select button from the Appearance and Input pages of the profile editor as it is no longer needed.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=709914
2007-09-08 15:00:27 +00:00
Robert Knight
42dce0374c Changes:
* Add a passive warning widget which is displayed when a color scheme is selected which 
  uses transparency but the system does not support transparency 
* Always show the vertical scroll bar in the color scheme list
* Remove quotes around links and email addresses in mouse-over tooltip

Bug Fixes:

* Fix a few odd behaviours with the live color scheme preview
* Fix the 'Show in Menu' status of newly added profiles not being
  saved when Konsole exits.

  ( Update Profile's path property when saving the profile to 
    a new location )


Internal: 

* Removed many debugging statements and dead / commented out code
* Fix several unused parameter warnings
* API documentation corrections in Emulation class

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=706986
2007-08-31 17:56:35 +00:00
Robert Knight
503fdd023e Fix several memory leaks and uninitialized variables found with valgrind.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=696508
2007-08-05 05:53:05 +00:00
Robert Knight
76f81a12ef Fix wrong color scheme being selected initially on Appearence page in Edit Profile dialog.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=690458
2007-07-21 06:58:38 +00:00
Robert Knight
1c370c2d6c Simplify changing the current color scheme and current key bindings in the profile editor. There is no longer a distinction between the color scheme selected for removal/editing and the color scheme selected for use by the profile. Also select the current color scheme, current key binding when the relevant pages of the profile editor are shown.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=686299
2007-07-11 00:49:21 +00:00
Robert Knight
37088799cf * Update the regular expression for the Url filter. Anything in the form
letters://any-non-whitespace-characters is treated as a Url

* Correct the test which compares the old and new values and ranges when
  updating the terminal display's scroll bar.  
  This fixes the scroll bar being repainted unnecessarily often.  Found
  with the nifty QT_FLUSH_PAINT debugging tool.

* Select the profile name (set to "New Profile" by default) and focus the 
  profile name edit area when showing the Edit Profile dialog for a new
  profile to allow the user to easily set the name.

* Always use color scheme list animation, not just when the Edit Profile 
  dialog is first displayed as per richmoore's suggestion. 

* Update Edit Profile dialog caption when profile name is changed.

* Update favorite status icon in Manage Profiles dialog when the favorite
  status is changed by another object.

* Add disabled menu item which is shown in the 'Change Profile' list
  when there are no other profiles there

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=683787
2007-07-05 09:51:06 +00:00
Robert Knight
72241ef4a6 * Comment out many debugging messages
* Experimental optimization, disable kerning since this is not required
  with the mono-spaced fonts which are used in the terminal.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=682702
2007-07-03 09:14:21 +00:00
Robert Knight
035874672e Resize color name column to fit contents in color scheme editor. Draw a translucent version of the selection marker around the profile's current color scheme when it is not selected. The distinction between the color scheme being used by a profile and a color scheme selected so that it can be edited, removed or copied remains, though I am worried it might not be intuitive.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=680722
2007-06-27 02:52:04 +00:00
Robert Knight
2a1109196f Save and load environment variables as part of the profile. Defaults to just 'TERM=xterm'. Allow editing of the environment in the profile editor (not just the TERM variable). Separate out the tab-related options into their own tab in the profile editor and rename 'Keyboard Setup' to 'Input' as that seems a more obvious name.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=679103
2007-06-23 02:09:21 +00:00
Robert Knight
c699a29857 Make the color scheme entry animation faster. The downside is that sometimes it cannot be seen with the Oxygen style and the tab transitions enabled because of the time the transition takes.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=678036
2007-06-20 14:16:30 +00:00
Robert Knight
fe2be78491 Animated entry of color schemes in the list.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=677729
2007-06-19 19:48:58 +00:00
Robert Knight
daa85d19b7 Improve rendering of color scheme items a little more.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=677658
2007-06-19 16:46:40 +00:00
Robert Knight
777d7cb56e Slightly nicer looking items in color scheme list. Record a profile's parent when saving to disk.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=677619
2007-06-19 14:40:44 +00:00
Robert Knight
dbedf8d412 Fix setting of key binding description /doh. Fix crash in key binding editor if used without setting it up with an existing translator. Fixes crash in translator list if it is empty.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=677187
2007-06-18 16:39:40 +00:00
Robert Knight
ffda8d3ccc Implement saving of key binding changes. Adapt Pty changes to use Konsole's more verbose variable naming style.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=676902
2007-06-17 22:05:45 +00:00
Robert Knight
649ac01268 Copy the built-in key bindings into a new keytab file, install it and make it the default key bindings. The built-in one is still there at the moment. Reorganise the profile edit dialog, put the Scrolling page before the Keyboard Setup page since I expect it to be used more frequently. Add widgets for a not-yet-implemented test area to the key bindings editor.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=676102
2007-06-16 00:54:41 +00:00
Robert Knight
4cf299a08a More useful text for font preview, includes the font family and point size.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=676001
2007-06-15 17:29:09 +00:00
Robert Knight
80d35c03cf Delay loading settings dialog pages until they are used.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=675998
2007-06-15 17:18:51 +00:00
Robert Knight
53f7666e8e Allow the default encoding to be specified per-profile. Something has caused the Edit Profile dialog's minimum size to become huge, I haven't figured out what it is yet.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=670153
2007-05-31 13:42:23 +00:00
Robert Knight
5331bf720d Various EBN fixes.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=667655
2007-05-23 13:09:23 +00:00
Robert Knight
bc8b16325a Add keyboard icon to key bindings list. The current 'keyboard' icon is invisible against a white background, as are the hdd-external- icons. CCMAIL: kde-artists@kde.org
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=667503
2007-05-23 00:06:56 +00:00
Robert Knight
2739625dce Allow the tab bar position to be specified in the profile editing dialog. Other tweaks to the profile editing dialog.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=667497
2007-05-22 23:38:16 +00:00
Robert Knight
fdc683432c Use color scheme's transparency to draw item backgrounds in color scheme list if compositing is available. Untested.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=666405
2007-05-19 19:32:05 +00:00
Robert Knight
dcdf9e76b3 Rename History to Scrollback in the UI, to avoid confusion with shell's command history. Fixes to color scheme previewing in Edit Profile Dialog. Add a few icons here and there. Add full screen menu item.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=665834
2007-05-18 05:26:40 +00:00
Robert Knight
c5ab0f3cec Add basic code to associate shortcuts with profiles and load/save those shortcut/profile pairs. Move Profile class into its own source file. Move old TODO list into the 'old' directory.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=664308
2007-05-13 16:38:59 +00:00
Robert Knight
35792c6fa3 Use inline editing for the tab title formats.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=663372
2007-05-11 01:32:01 +00:00
Robert Knight
33e1a53cf8 Fix crash when changing color scheme if none in the list were previously checked. Add API documentation.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=663366
2007-05-11 00:22:53 +00:00
Dirk Mueller
9ea3227384 include cleanup
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=663054
2007-05-09 22:23:52 +00:00