WSJT-X/README.md
Colin Duquesnoy f172378ab1 Update README.md
C++ install procedure: sugest to put style.qss in the application resources.
2014-01-29 18:07:30 +01:00

3.2 KiB

QDarkStylesheet

Bitdeli Badge Build Status Number of PyPI downloads Latest PyPI version

A dark stylesheet for Qt applications.

License

This project is licensed under the MIT license.

Installation

Python

Install the qdarkstyle package using the setup script or using pip:

python setup.py install

or

pip install qdarkstyle

C++

  1. Download/clone the project and copy the following files to your application directory (keep the existing directory hierarchy):
  • qdarkstyle/style.qss
  • qdarkstyle/style.qrc
  • qdarkstyle/rc/ (the whole directory)
  1. Add qdarkstyle/style.qrc to your .pro file

  2. Add qdarkstyle/style.qss to your resources.

  3. Load the stylesheet:

QFile data(":path/to/style.qss");  // TODO: set your own resource path
if (!f.exists())
{
    printf("Unable to set stylesheet, file not found\n");
}
else 
{
    f.open(QFile::ReadOnly | QFile::Text);
    QTextStream ts(&data);
    QApplication::instance()->setStyleSheet(ts.readAll());
}

Usage

Here is an example using PySide:

import sys
import qdarkstyle
from PySide import QtGui


# create the application and the main window
app = QtGui.QApplication(sys.argv)
window = QtGui.QMainWindow()

# setup stylesheet
app.setStyleSheet(qdarkstyle.load_stylesheet())

# run
window.show()
app.exec_()

To use PyQt4 instead of PySide, you just need to replace

app.setStyleSheet(qdarkstyle.load_stylesheet())

by

app.setStyleSheet(qdarkstyle.load_stylesheet(pyside=False))

There is an example included in the example folder. You can run the script without installing qdarkstyle. You only need to have PySide or PyQt4 installed on your system.

Status:

The following widgets are styled:

  • QMainWindow
  • QWidget
  • QMenu, QMenuBar
  • QToolTip
  • QAbstractItemView
  • QLineEdit
  • QGroupBox
  • QTextEdit, QPlainTextEdit
  • QTreeView,
  • QScrollBar
  • QRadioButton
  • QCheckBox
  • QComboBox
  • QPushButton
  • QToolButton
  • QToolBar
  • QProgressBar
  • QSpinBox
  • QFrame
  • QTabWidget, QTabBar
  • QDockWidget
  • QSlider (horizontal and vertical)

What still needs to be done:

  • QAbstractScrollArea
  • QSplitter
  • QStatusBar
  • QToolBox

Changelog

* 1.2:
   - Improve QTableView support
* 1.1:
   - Switch to MIT license
   - Add python 3 support
* 1.0:
  - First public release (LGPL v2)

Contact information:

Snapshots

I have used this stylesheet for an internal tool at work. Are are a few screenshots:

alt text