Commit Graph

68 Commits

Author SHA1 Message Date
Robert Knight
956277c014 Convert tabs to 4 spaces to match kdelibs conventions. Previously
there was a mix of tabs and spaces for indentation.

CCMAIL:Stefan.Becker@nokia.com


svn path=/trunk/KDE/kdebase/apps/konsole/; revision=863326
2008-09-21 20:06:58 +00:00
Laurent Montel
d31c37c404 guard #warning
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=843396
2008-08-07 06:57:13 +00:00
Robert Knight
78277a8cbe * Change behavior of 'New Profile' button to copying the selected
(or default) profile rather than creating a new profile which inherits from it.
Profiles created previously should not be affected.  This should remove the
possible confusion arising from the previously used inheritance behavior
* Support editing and deleting of multiple profiles at once by selecting them in
the Manage Profiles dialog and clicking 'Edit Profile'/'Delete Profile'.  String
changes deferred to KDE 4.2
* Fix memory leak and selection loss in Manage Profiles dialog when profiles
are added/removed/changed

BUG: 162461

Squashed commit of the following:

commit c6c482f76c840dfa34c36c2eee32f5e2aed499e7
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu Jun 26 00:45:20 2008 +0100

    Avoid the selection being cleared when profiles are added/removed/changed in ManageProfilesDialog.  Finish addition/update/removal of items when profileAdded()/profileRemoved()/profileChanged() signals are emitted by the SessionManager.

commit 0125653d41738768d074bcd3c6445dd98eefa619
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Jun 25 11:21:44 2008 +0100

    Set model in ManageProfilesDialog setup rather than ManageProfilesDialog::updateTableModel()

commit 32704ba0bf076ec3c305515e350c016a7bdaf2f3
Author: Robert Knight <robertknight@gmail.com>
Date:   Sun Jun 22 19:42:33 2008 +0100

    Avoid creating a new QStandardItemModel on every profile table update.  Refactor creation/update of items for profiles.

commit dcd9eb9e91d64525359561cca2f8f6f54a35a2de
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri Jun 13 19:52:33 2008 +0100

    * Disable previewing of a property when editing multiple profiles
    where the profiles have conflicting original values for the property
    * Change EditProfileDialog::_profileKey to EditProfileDialog::_profile

commit 020ef2d5f090a1cc2b1814c4d429051cb3cf98bc
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri Jun 13 19:28:31 2008 +0100

    Add stub functions for SessionManagerTest

commit 655b0e6fa8e8891874ca5aa7bee6f81f3d76d065
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri Jun 13 19:27:03 2008 +0100

    Include KDE 3 profiles when displaying available profiles
    via "konsole --list-profiles"

    Re-use SessionManager::availableProfilePaths() to get the list
    of all profiles to load in SessionManager::loadAllProfiles()

commit 93c02e6312c8a38d89a137c7260183dcf86946fa
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Jun 11 04:02:26 2008 +0100

    Export SessionManager class for testing.

commit a35eaba16cad3a3301a4636d032d789df669df9e
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 22:34:33 2008 +0100

    Add SessionManager test stub

commit 347dadcd1c50157eb264bbb17423003a658bd8f5
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 22:17:43 2008 +0100

    Display profile names in 'Name' field when editing multiple profiles.

commit 4d8e895fd9c95dbd954e224edcbcd68c24429bad
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 22:06:49 2008 +0100

    Add test for Profile::asGroup()

commit 527535f7786d5c7744436012dbbd889348cec6a1
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 21:58:15 2008 +0100

    Limit length of dialog caption when editing many profiles.

commit eb6e199e6e130b7b33ff97f124162dbb2107bba1
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 21:50:53 2008 +0100

    Re-insert accidentally removed if() condition to check that deleted profile is not the default.

commit e11d4d7dac1ae1df4c401a04e8497521f240d8f0
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 20:32:01 2008 +0100

    ManageProfilesDialog formatting tidy-up.

commit 69dd69a9aa8df9dfa4f1473e53b99e17898c8549
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 18:57:40 2008 +0100

    When updating a profile group via SessionManager::changeProfile(), update the group's properties before calling changeProfile() on the group's members.  Otherwise the profile group's property values will be out of sync with those of the member profiles.

commit d74de728f0c19ca9786f2429fbd819938eaabe3e
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 18:56:04 2008 +0100

    Add updated Profile.h missing from previous commit.

commit 67f6ec24f6871a931d3b80cc11313a1c0c8fd240
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 18:54:06 2008 +0100

    Make profile groups hidden by default.

commit f4653c6953b356107ab347f173e8d04296abcbac
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 18:41:49 2008 +0100

    When modifying a profile group with SessionManager::changeProfile(), iterate through the group's profiles and call changeProfile() on each of them.  Otherwise the profiles in the group are not saved to disk when they are updated.

commit cc3c14e3c2d43f75591396b154e6b6f4b430d9a9
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 18:35:24 2008 +0100

    Add Profile::asGroup() convenience methods which return the profile dynamically cast to a Profile group.

commit e2db97ee0bcb4bb3f4a8d7356846c37a04708c88
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 03:43:20 2008 +0100

    Make profile group hidden, prevents creation of nameless '.profile' file on disk.

commit 872113584bce97ae739a7ba46d02ee2d63f2990d
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 03:22:45 2008 +0100

    Clear corresponding shortcuts when deleting a profile.

commit 0c9353ffde887ac408d87c258587d84cfa2a4d6f
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 03:08:47 2008 +0100

    KDE4ProfileReader - Check that profile exists before trying to load it with KConfig

commit af7caa25931684da0d8f0f495d5acab8e6de1b41
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 02:57:50 2008 +0100

    Fix enabling/disabling of buttons in ManageProfilesDialog when number of selected rows changes.

commit d98184d6684cd9a58a702ab2b23bfa0105f25a0f
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat May 31 02:44:51 2008 +0100

    Add a test for Profile::clone()

commit b536355cde13523f12ed927b9a5e64b63954f21c
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 30 02:58:03 2008 +0100

    Implement testProfile(), testProfileGroup().  Export Profile class for use in tests.

commit 8458de3fffe3755cd5ba9ebdda5795a422cfcb5f
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 30 02:01:42 2008 +0100

    Tidy up Profile docs.

commit 6ed40ae0adc6128057b7d1c71c4bbb1259768102
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 30 01:53:02 2008 +0100

    Push ProfileGroup::isPropertyValueUnique() up to Profile::canInheritProperty()

commit b992e0268c1708814a5843b13e321b9b4a86c05a
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 30 00:30:45 2008 +0100

    Add Profile test stub.

commit 7c7b63e50a2bb7bcd7a26d895e77860b6a5effde
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 29 06:12:52 2008 +0100

    Document ProfileGroup

commit 838a628dd395bdaf6ae04fb027b1efcccbbe9f32
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 29 01:26:48 2008 +0100

    Remove unused and incorrect Profile::terminal()

commit 87e1ad1174ffa8fd1bafe37b4d52c9782708c9ea
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 29 01:23:52 2008 +0100

    Remove unused kDebug() statements.

commit 56c78128f083ef846308a09038251786677dd087
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 29 01:22:41 2008 +0100

    Profile documentation corrections.

commit 965803c401692720c57a65bf1534f774e1b99365
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 29 01:10:23 2008 +0100

    Document SessionManager::fallbackProfile()

commit a222673b15f6e8c8bb53e95046ee786369deb127
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 20:49:12 2008 +0100

    Disable 'New Profile' and 'Set as Default' buttons when multiple profiles are selected.  Remove incorrect comment about QAbstractItemView signals.  selectionChanged() is a slot not a signal.

commit e5e9db39487595d92fe2e7d3fa16cca731c417ec
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 20:19:18 2008 +0100

    Change the way new profiles are created.  Instead of creating an almost-empty profile which inherits from the selected profile, create a new profile which inherits from the fallback profile and then clone the properties of the currently selected profile into the new profile.

commit f56cc534b2ebd691c6b3449e982c74c7e564a35a
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 20:18:14 2008 +0100

    Expose the hard-coded fallback profile in the SessionManager

commit b00327479d222be60484bd781a131598f2c2482f
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 20:17:35 2008 +0100

    Add method Profile::clone() to copy an existing profile, optionally copying all properties or just those differing from the current values.

commit 951620449c3a621d38f6607c0ea44e2a1a0ac087
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 19:24:49 2008 +0100

    Treat a ProfileGroup with only one profile the same as a standard Profile in EditProfileDialog.

commit ecdf120b67a6b14a871cd808654fe6653bb56aeb
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 19:24:08 2008 +0100

    Make ProfileGroup instances with only one profile behave the same as a standard Profile with respect to 'unique' properties such as Name and Path.

commit f72040f310946f92eff318c52da706fce00fa17e
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 19:14:27 2008 +0100

    Fix double-deletion of profile group.

commit 1523239e9cbde518eb89fc70e6711463a7f7bb2a
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 18:57:17 2008 +0100

    Only look at indexes in column 0 when retrieving the selected profiles.

commit 5706a8ee16bc1b87777563023e4ddf5253815c48
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 18:52:47 2008 +0100

    Move to next property when skipping a 'unique' property.

commit 803eef6767620dd7a6e9b87cc97f1c110dfa66a6
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 18:49:20 2008 +0100

    Modify Edit/Delete actions in ManageProfilesDialog to allow editing/deleting of multiple profiles.

commit eec6947620d51b2a41ed74a03e1a7b695d0ee811
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 18:48:36 2008 +0100

    Modify EditProfileDialog to show a different caption depending on whether the passed in profile is a single profile or a group of profiles.  Disable the profile name edit and label when editing a group of profiles.

commit 13ee83b2bb888da4009bee0cb25926fc02f34701
Author: Robert Knight <robertknight@gmail.com>
Date:   Mon May 26 18:47:22 2008 +0100

    Add ProfileGroup class which provides a composite allowing multiple profiles to be treated as one.

commit 1310a4ee66e6ba9eb91f1a0dfd79c5415c3a9f4f
Author: Robert Knight <robertknight@gmail.com>
Date:   Sun May 25 00:07:47 2008 +0100

    Undo string changes in Manage Profiles dialog so that this branch can be merged before 4.1

commit edc46b4085d61d1cc14a47c429aac5fc9f52a59f
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 23 18:34:09 2008 +0100

    Change 'New Profile' button to 'Copy Profile' to clarify how it works.  Change 'Edit Profile' to 'Edit' and 'Delete Profile' to 'Delete' to clarify that they can work on more than one profile.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=824515
2008-06-26 00:04:01 +00:00
Dirk Mueller
c151512574 unless I'm really missing something, this is a perfect noop
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=812785
2008-05-26 11:46:48 +00:00
Robert Knight
730281a5c8 Remove close buttons on individual tabs and replace with a single close button on the
right of the tab bar when the "Show 'New Tab' and 'Close Tab' buttons on tab bar" option
is enabled - which brings tab management back to the way it was in KDE 3.    

Several users (esp. those working with laptop trackpads) were having problems with
accidentally closing tabs.  It seems KTabBar's close buttons need some refinements before
they can be used in the terminal.

CCMAIL: wstephenson@kde.org


svn path=/trunk/KDE/kdebase/apps/konsole/; revision=809838
2008-05-19 16:19:05 +00:00
Robert Knight
34a9e7ec42 * Add option to show new tab button with delayed popup menu on tab bar.
Go to Settings -> Edit Current Profile -> Tabs page and tick "Show 'New tab' button in tab bar"

  This was added for the benefit of users with existing habits from KDE 3 and is not
  shown by default.

* Add close buttons on tabs using the new style ppenz added to KTabBar
* Add confirmation when closing via middle-click/close button if a program other than a shell or
  nested shell is running in the foreground of that session.

BUG: 157015

Squashed commit of the following:

commit 54a5db9c31a5527e44d7358b30587c28bab965bc
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:48:05 2008 +0100

    UI text correction: 'on tab bar' -> 'in tab bar'

commit ed8e70238e2cc4240f8334cd091fa2707785a908
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:46:42 2008 +0100

    Do not show the confirm-on-close prompt if the foreground program is another shell.

commit 010370c12950a532d93c99d0983c74c47e26ad07
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:40:05 2008 +0100

    Add a confirmation which is displayed when closing a tab via middle-click / close button if the program has an active program running in the session (other than the shell itself).

commit 49812e26e5fd8c44dd01f1a6a4c0e7271c6366fd
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:25:29 2008 +0100

    Add confirmClose() method to ViewProperties which is can be re-implemented to prompt whether to close the session.  Make the presence of the close button in the ViewContainer dependent on a QuickCloseView feature being enabled.

commit ece191ad5ad550af47cd2ca0bc75a517119e7189
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:09:17 2008 +0100

    Show 'close' button on tabs using the new close button style added to KTabBar by ppenz.

commit f975f04c993effdd2afef588c5f765192b6fab5a
Author: Robert Knight <robertknight@gmail.com>
Date:   Fri May 2 01:03:54 2008 +0100

    Better UI text for 'Show New Tab' option.

commit 642c5b1d07cd2288c78446efe395da050730decb
Author: Robert Knight <robertknight@gmail.com>
Date:   Thu May 1 21:04:47 2008 +0100

    Sync 'new tab' tab bar menu actions with profile list.

commit c6c556980e43afcb1bb5fdfaaa9dd7e12e524688
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 23:01:34 2008 +0100

    Hook up actions in new tab popup menu so a new tab is created with the right profile when an action is chosen.

commit dece8a23ff101dda47d495ba38e57e55059c4e63
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 22:51:28 2008 +0100

    Apply ShowNewTabButton profile property to current view container.

commit e244a95512dc535198fa69c3afe34b597402de15
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 22:50:57 2008 +0100

    Add support for enabling/disabling a 'quick new view' widget in view containers.  Add an implementation of it (quick new tab button) in TabbedViewContainerV2

commit 9fdc2e450aefb9b602f8fb6b66d3508e6750531b
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 22:50:22 2008 +0100

    Hook up 'Show new tab button' UI option.

commit 7326e6dccbc095f0f784fd6f4da532f250ca5437
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 22:50:04 2008 +0100

    Add ShowNewTabButton profile property and set a default for it (false)

commit 273f85f0d21d8b755712c67c50a939400f15a169
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 21:22:09 2008 +0100

    Add checkbox for toggling new tab menu button.

commit 200744ce620cd6bd9a9d1791e62863c618921788
Author: Robert Knight <robertknight@gmail.com>
Date:   Wed Apr 30 21:21:33 2008 +0100

    Formatting. Remove extra lines.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=803112
2008-05-02 00:59:47 +00:00
Robert Knight
5d9997446e Update copyright year to 2008. Remove '(C)' from copyright lines.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=800631
2008-04-24 14:53:43 +00:00
Albert Astals Cid
f52cceaf9e remove duplicate includes
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=796409
2008-04-13 14:38:26 +00:00
Robert Knight
366f9eaa36 Use a new warning box widget for the 'transparency not supported' warning labels.
The new widget respects the current KDE color scheme.

BUG: 156119

Squashed commit of the following:

commit c7d81f7c65d2be87a4b70f485da6ec1b91be76b9
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Apr 12 11:05:11 2008 +0100

    Use the warning box for the 'transparency not supported' warning display in the color scheme and profile editors.

commit e4149b67588123540144f0496257194058c92fe4
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Apr 12 11:04:25 2008 +0100

    Add WarninBox to build.

commit d82adc02b9aad6cb99660a9b2d48cce2e3c42418
Author: Robert Knight <robertknight@gmail.com>
Date:   Sat Apr 12 11:04:02 2008 +0100

    Add a generic warning box widget which uses colors from the current KDE color scheme.

svn path=/trunk/KDE/kdebase/apps/konsole/; revision=796014
2008-04-12 10:07:00 +00:00
Diego Iastrubni
60f0a0a59e New backport (??) from KDE3: now each profile can enable/disable BiDi rendering in the display. We need this since many console based application (vim, emacs, fribidi etc)
implement their own BiDi algorithm. There is also another reason: comatibility. All terminals are *not* aware of the BiDi issue and do not re-order the chars
(gnome-terminal, xterm, konsole, etc). It is possible to enable the BiDi rendering on each profile, so this is not a huge lost. I am still missing the keyboard shortcut to
quickly enable/disable it (alt+control+b in konsole3), but I am not sure what is the best way for doing it.

A quick note about the implementation:
In QPainter3, there was an option to draw a text and tell the painter "please do not implement BiDi". In QPainter4 (up to 4.4) there is no such option. I am forcing it by
drawing  "painter.drawText(rect,0,QChar(0x202D)+text)" (that is &LRO;), and it does seem to work, but I find it kinda "hackish". I will open a task in Trolltech and
request that new feature. Hopefully by Qt4.5/KDE4.2 I will be able to change the implementation.


svn path=/trunk/KDE/kdebase/apps/konsole/; revision=791374
2008-03-29 10:35:29 +00:00
Robert Knight
f73cc9c754 Add an option to the profile editor to control whether new sessions start in the same directory as the current session.
svn path=/trunk/KDE/kdebase/apps/konsole/; revision=791273
2008-03-28 22:16:02 +00:00
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