Gère les widgets de contenu davantage comme Visual Studio ou des programmes similaires. J'essaie également de tout faire avec les fonctionnalités de base de Qt. Utilisation de base de QWidgets et QLayouts et utilisation des styles de base autant que possible.
Ouvrez le build.pro
avec QtCreator et démarrez le build, c'est tout. Vous pouvez exécuter le projet de démonstration et le tester vous-même.
La branche master
n'est pas garantie d'être stable ou ne se construit même pas, puisqu'il s'agit de la branche principale de travail. Si vous voulez une version qui se construit, vous devez toujours utiliser une balise release/beta.
L'exemple suivant montre le code minimum requis pour utiliser ADS.
MaFenêtre.h
# include < QMainWindow >
# include " ads/API.h "
# include " ads/ContainerWidget.h "
# include " ads/SectionContent.h "
class MyWindow : public QMainWindow
{
Q_OBJECT
public:
MyWindow (QWidget* parent);
private:
// The main container for dockings.
ADS_NS::ContainerWidget* _container;
// You always want to keep a reference of your content,
// in case you need to perform any action on it (show, hide, ...)
ADS_NS::SectionContent::RefPtr _sc1;
};
MaFenêtre.cpp
# include " MyWindow.h "
# include < QLabel >
MyWindow::MyWindow (QWidget* parent) : QMainWindow(parent)
{
_container = new ADS_NS::ContainerWidget ();
setCentralWidget (_container);
_sc1 = ADS_NS::SectionContent::newSectionContent ( QString ( " Unique-Internal-Name " ), _container, new QLabel ( " Visible Title " ), new QLabel ( " Content Widget " ));
_container-> addSectionContent (_sc1, NULL , ADS_NS::CenterDropArea);
}
static void initStyleSheet (QApplication& a)
{
// Q_INIT_RESOURCE(ads); // If static linked.
QFile f ( " :ads/stylesheets/default-windows.css " );
if (f. open (QFile::ReadOnly))
{
const QByteArray ba = f. readAll ();
f. close ();
a. setStyleSheet ( QString (ba));
}
}
int main ( int argc, char *argv[])
{
QApplication a (argc, argv);
a. setQuitOnLastWindowClosed ( true );
initStyleSheet (a);
MainWindow mw;
mw. show ();
return a. exec ();
}
Manuel Freiholz, responsable du projet
Ce projet utilise la licence WTFPL (Do W hat The F uck You Want To P ublic License )
L'utiliser ? Faites-le-nous savoir en créant un nouveau problème (ce n'est pas obligatoire, bien sûr).