This also fixes the issue that shortcuts of designer integration gets
lost if it doesn't get initialized.
Task-number: QTCREATORBUG-4264
Task-number: QTCREATORBUG-11399
Change-Id: Ieb4fe5fd345e69aa62403e4578fa6028400aff6f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
When opening a core dump using command-line, the window still appears as
"fake maximized"
Change-Id: Ifdd9b58df1506de73357b9c3722bf6f3eaa3a1de
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Introduce methods to save a document/list of documents/all documents,
both silently and with a dialog to the DocumentManager.
All of these return a bool that signifies whether the save was
successful or not.
Detailed information on which files failed to load or whether the
save was canceled by the user are still available as optional
in/out parameters.
Change-Id: Id17798302f2a8ba6b85a07c1f0b91f03b20da03f
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This causes trouble with the unit tests on windows.
This reverts commit 0fe28d652f1219978d23030cbb322d09ada5a68f
Change-Id: I08d4991d9b86ee8b80d093899f2e33e2be1c1565
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
A lot of our build system files specify unneeded include
paths. These roughly fall into the following categories:
a) Paths that are already set in more general files
such as qtcreator.pri.
b) Paths that serve no purpose at all, possibly
left over from earlier versions of the project.
c) Paths that act as workarounds for wrong include
statements of the form '#include "xyz.h"', where
xyz.h is not in the same directory as the including
file.
This patch removes such path specifications and fixes the offending
include statements from case c).
Tested on Linux, Windows and OSX with qmake and qbs.
Change-Id: I039a8449f8a65df0d616b4c08081145c18ae4b15
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This change
* Removes IMode::type, ModeManager::activateModeType, and
IEditor::preferredModeType, and adds IEditor::isDesignModePreferred
instead
* Adapts the mode switching code in EditorManager to handle multiple
windows, for example switching to edit mode should only happen if
the editor/view is in the main window. Otherwise the editor window
should be raised and focused
* Renames EditorManager::NoActivate --> DoNotChangeCurrentEditor
* Reverts the EditorManager::ModeSwitch logic to switch mode or
make the current editor visible by default, introducing
DoNotMakeVisible flag instead
* Fixes a few instances where EditorManager::ModeSwitch should have been
used
One non-trivial problem left: If you open a .ui file and switch to an
external editor window, edit mode is activated, because the current
editor no longer is a .ui file, which means that the design mode gets
deactivated.
Change-Id: I76c5c2391eb4090143b778fb103acff3a5a1ff41
Reviewed-by: David Schulz <david.schulz@digia.com>
The extra editor windows need to have editor manager context, otherwise
shortcuts (like ctrl+tab) do not work in them if e.g. projects mode is
active. Doing this via add/removeAdditionalContexts would be non-trivial
and error prone, so adding a context to the extra window is more
convenient. Since editors themselves already define a context, we need
to allow nesting of contexts.
Change-Id: I244eca53ebd665fd4d8fe7531e8ff701ed0b40b2
Reviewed-by: David Schulz <david.schulz@digia.com>
(cherry picked from commit deff0eb3c7)
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
A few details are still to be done:
- extra windows are not restored yet
- window title of extra windows should show information about current
editor
- the "raise main window" hack for Linux doesn't work with Qt 5
But it should already now be quite usable.
Change-Id: I638583ee4b2abe32e95c261bdf31b4a10b472748
Reviewed-by: David Schulz <david.schulz@digia.com>
Again, since the default menu role is TextHeuristicRole, and when we
enter fullscreen the text is set to "Exit Full Screen", the Mac QPA
menu item syncing will assign this to be the quit menu item.
This would cause two problems. First, pressing Cmd-Q in fullscreen would leave
fullscreen mode instead of quitting the app. Second, that would make the quit
menu item to be hidden when leaving fullscreen, since the toggle fullscreen
action text would change back to "Enter Full Screen", and the make a round
trip to the menu item heuristic logic.
Task-number: QTBUG-30654
Change-Id: I7524c54c3bd77cce891c57292825f02e163fd7fa
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
This both allows the mode bar to be hidden optionally, and can give the
progress information a bit more room (e.g. for titles).
Progress information can either be shown in "pop up" windows in the
lower left corner of the main window (hiding window contents below),
or in a summary progress bar in the bottom right corner of the status bar.
Hovering the summary progress bar temporarily pops up the detailed
progress information. Keyboard can be used to switch between the two
views.
Change-Id: Ic6d6ab4fd43906e84b480c8ddf8eae5f5852e1f3
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Replace compile-time checks for host OS by run-time checks.
Change-Id: I9f237389171586786c2609f81314bcb1bc17b01e
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
improves menu behaviour for qt5 on osx
Task-number: QTCREATORBUG-8152
Change-Id: I6ff7703d45ff5e250c7fae9a8c85f8d8ef078e16
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
We now keep the current context if the focus is set on a widget with a
parent hierarchy that doesn't define one. This way, toplevels without a
context, like popup windows without parent, will keep the behavior from
before other toplevels could define contexts at all
(2118d542e6)
Task-number: QTCREATORBUG-8667
Change-Id: I8dd04d1f97f6ced10f8fa4269bc91457211396ca
Reviewed-by: David Schulz <david.schulz@digia.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
#!/usr/bin/env ruby
Dir.glob('**/*.cpp') { |file|
# skip ast (excluding paste, astpath, and canv'ast'imer)
next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
s = File.read(file)
next if s.include?('qlalr')
orig = s.dup
s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
res = $&
if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
res
else
res.gsub!('} else', 'else')
res.gsub!(/\n +} *\n/m, "\n")
res.gsub(/ *{$/, '')
end
}
s.gsub!(/ *$/, '')
File.open(file, 'wb').write(s) if s != orig
}
Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
We want to move these styles out of the library so
we should not depend on them in creator.
This patch reverts 63cacc4534,
since it does not rely on ifdefs.
See also 5d0f7d2304 in master.
Change-Id: I8a3762f9bc31c679067ebb0a6b5540bc18e8b836
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
We want to move these styles out of the library so
we should not depend on them in creator.
Change-Id: I5326285d880c5e85d8d5ccdeca36fba30cf53ae0
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
This macro isn't defined in Qt5 anymore, so use Q_OS_* where
appropriate.
Regarding bug QTCREATORBUG-7936:
Now the fonts look normal again on GNU/Linux, e.g. in the text editor
and the application/compile output pane.
Task-number: QTCREATORBUG-7936
Change-Id: I501cca608f273789d095e1138b32c2c8c38b0059
Reviewed-by: Eike Ziller <eike.ziller@digia.com>