Qt Creator Plug-in Gallery: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Added markup languages preview plugin.)
(Cleanup)
Line 1: Line 1:
{{Cleanup | reason=Auto-imported from ExpressionEngine.}}
[[Category:Tools::QtCreator]]
[[Category:Tools::QtCreator]]
= Extend Qt Creator =


Even though Qt Creator and Eclipse are different tools written in different programming languages, they still share the approach of adding all the functionality by plugins. So, from that point of view Qt Creator and Eclipse can be seen more as plugin frameworks instead of IDEs.
Even though Qt Creator and Eclipse are different tools written in different programming languages, they still share the approach of adding all the functionality by plugins. So, from that point of view Qt Creator and Eclipse can be seen more as plugin frameworks instead of IDEs.
Line 272: Line 267:


[https://github.com/vinipsmaker/tufao-qtcreatorplugin site] [github.com]
[https://github.com/vinipsmaker/tufao-qtcreatorplugin site] [github.com]
= External documentation =
You can display external documentation in the Qt Creator Help mode. For more information, see the [http://doc.qt.io/qtcreator-2.8/creator-help.html#adding-external-documentation Qt Creator Manual] [qt-project.org].

Revision as of 16:01, 27 June 2015


Even though Qt Creator and Eclipse are different tools written in different programming languages, they still share the approach of adding all the functionality by plugins. So, from that point of view Qt Creator and Eclipse can be seen more as plugin frameworks instead of IDEs.

A plugin implements certain extension points but at the same time can also define new extension points. And that’s where Qt Creator and Eclipse differentiate.

In Eclipse, the extension points are usually defined as soon as the plugin is implemented meaning that those interfaces are often best guesses based on one example extension if at all. This may easily result in unnecessary extension in the first place or too inflexible or limited interfaces for more real world use cases.

Qt Creator takes another approach. In most cases plugins do not define extension points immediately, so it’s always treated as a leaf. For the first use case which requires an extension we still recommend to put the new functionality into the existing plugin implementation. Once a second or third use case comes up we start refactoring the original plugin and define the extension points. Obviously, this is not a 100% guarantee that those interfaces are perfect and cover all future needs, but it’s definitely better than basing the extension point on only one example or even pure guesses.

Contributing plugins

Please check Qt_Creator_Plug-in_Contribution_Guide when considering contributing a plugin to Qt Creator.

Qt Creator Plug-in Gallery

Version Control Systems

Subversion Plug-in Improved

Improved in terms of importing a project to a SVN repository.

site [bavooo.be]

Bazaar plugin (merged)

A plugin adding support for the bazaar version control system.

site [blueprints.launchpad.net]

Status: merged into Qt Creator 2.2

Build Enviroment Support

autotools (merged)

Autotool support for Creator

site [gitorious.org]

Status: merged into Qt Creator 2.4

Premake Project Manager Plugin

This plugin adds support of Premake [industriousone.com] build configuration tool into Qt Creator.

site [gitorious.org]

CodeBlocks Project Manager Plugin

This plugin can read Codeblocks .workspace project files. It reads the projects hierarchy and parses the individual .cbp project files to extract the source and header files and the build targets. Using commandline Codeblocks it allows you to (re)build your workspace. Also the build output is parsed(gcc and msvc supported).

site [gitorious.org]

Google Native Client Toolchain Plugin

Adds the Chrome browser as a target. For use with the NaCl port of Qt.

site [wiki.qt.io]

Meique build system plugin

site [github.com]

CMake Project Manager

Enhances the CMake integration

site [github.com]

Boost.Build Project Manager

Provides basic integration with Boost.Build [boost.org] system to build C++ projects.

site [github.com]

Status: usable, works with Qt Creator 3+, early development

Language support

RubyCreator

Add Ruby language support to QtCreator.

site [hugopl.github.io]

Code documentation and status

Doxygen Plugin

Generates doxygen comments from source code and can launch doxywizard for editing doxygen config file

site [dev.kofee.org]

Status: works with Qt Creator 2.5

Jenkins Status plugin

Shows the status of Jenkins on the left site. This Plugin is based on the CruiseControl-Plugin.

site [github.com]

Status: works with Qt Creator 2.5

New features for QtCreator

Class browser

site [cppblog.com]

Emacs keys

Emacs-style keybindings, alike "FakeVim"

site [github.com]

Status: last commit June 2011, works with Qt Creator 2.2.1

Quick Attach

site [github.com]

Editor Tabs

site [github.com]

XmlTree Plugin

A plugin for reading and editing xml files as tree. site [gitorious.org]

Status: active developed

Database viewer

Plugin allows to view databases, supported by QtSql module.

Features:

  • Add several database connections with different drivers or connection options.
  • Browse tables list, table's data and schema.
  • Execute sql query.
  • Copy table's or query's contents to clipboard.

Plugin homepage [gres.biz]
Plugin source [github.com]
Plugin download [sourceforge.net]

Markup languages preview

Plugin performs preview of documents written in some markup languages.

Supported languages:

  • Asciidoctor
  • Html
  • Markdown
  • Textile

Plugin homepage [gres.biz]
Plugin source [github.com]
Plugin download [sourceforge.net]

Development helping tools

CppCheck

Static analysis of C/C++ code developed as an external opensource tool.

Checks for:

  • Out of bounds checking
  • Check the code for each class
  • Checking exception safety
  • Memory leaks checking
  • Warn if obsolete functions are used
  • Check for invalid usage of STL
  • Check for uninitialized variables and unused functions

More Informations: Project homepage [cppcheck.sourceforge.net]

Qt-cppcheck integrates the external command line tool into QtCreator IDE.
Automatic and manual check of active project and individual project files.
Display found error in task pan (with marks in editor)

Plugin homepage [gres.biz]
Plugin source [github.com]
Plugin download [sourceforge.net]

Google Test

Plugin integrates some Google Test functionality into Qt Creator IDE.

Features:

  • Parse test runner's output and show tests' results in pane
  • Launch tests from active project

Plugin homepage [gres.biz]
Plugin source [github.com]
Plugin download [sourceforge.net]

CppHelper

generates implementation-stubs
site [gitorious.org]

Status: discontinued, replaced by refactoring action in Qt Creator 2.1

Code Coverage

site [github.com]

Encapsulation

site [github.com]

QuML, an UML tool

Started as a Master Thesis, currently abandonned

thesis [vakken.groept.be]
appendices [vakken.groept.be]
git repository [gitorious.org]

Profiling plugin

(oprofile / linux based) site [qt.gitorious.org]

Artistic Style Plugin

Full featured code pretty printer plugin using astyle site [astyleplugin.sourceforge.net]

Static Code Quality Plugin

A plugin for performing static code quality tests. Based on Krazy and making use of Qt Script and the cpp parser that comes with Qt Creator.

Currently in a development state and not completely ready for use.

site [gitorious.org]

WebRunTime Plugin

Support for developing web based applications. Only a video of the plugin in action.
Status: unknown
video [youtube.com]

OpenPilot

A plugin using Qt Creator as a plugin manager only, embedding a map.
Status: unknown
site [openpilot.org]

CruiseControl Monitor Plugin

A simple plugin for monitoring a CruiseControl continuous integration server site [code.google.com]

Status: outdated, last commit 4th July 2010 for Qt Creator 2.0.0

Mylyn Plugin (abandoned)

Mylyn is a application lifecycle management plugin, inspired by an eclipse plugin of the same name. Status: abandoned. Anyone wishing to pick up the project is encouraged to contact the former project owner on github [github.com]

Tufão (an asynchronous web framework)

site [github.com]