/*
 *   This file is automatically generated by Plasma UI Compiler
 *   DO NOT CHANGE THE CONTENTS, IT IS AUTOMATICALLY REGENERATED
 */

#ifndef PUI_LANCELOTWINDOWBASE_H
#define PUI_LANCELOTWINDOWBASE_H

/* Includes */

#include<QSize>
#include <lancelot/layouts/NodeLayout.h>
#include <lancelot/layouts/CardLayout.h>
#include<QIcon>
#include<lancelot/widgets/Panel.h>
#include<lancelot/widgets/ExtenderButton.h>
#include<lancelot/widgets/TabBar.h>
#include<QString>
#include<lancelot/lancelot.h>
#include <lancelot/layouts/FlipLayout.h>
#include<lancelot/widgets/ActionListView.h>
#include <lancelot/layouts/FullBorderLayout.h>
#include<lancelot/widgets/PassagewayView.h>

/* Defines */
#define SYSTEM_HEIGHT 28
#define SYSTEM_PADDING 8
#define SEARCH_HEIGHT 30
#define SECTIONS_WIDTH 128


namespace Ui {

class LancelotWindowBase
{

protected:

    Lancelot::FlipLayout < Lancelot::FullBorderLayout > * layoutMain;
Lancelot::TabBar * tabbarSections;
Lancelot::NodeLayout * layoutSearch;
Lancelot::CardLayout * layoutCenter;
Lancelot::PassagewayView * passagewayApplications;
Lancelot::Panel * panelComputer;
Lancelot::NodeLayout * layoutPanelComputer;
Lancelot::ActionListView * listComputerLeft;
Lancelot::ActionListView * listComputerRight;
Lancelot::Panel * panelContacts;
Lancelot::NodeLayout * layoutPanelContacts;
Lancelot::ActionListView * listContactsLeft;
Lancelot::ActionListView * listContactsRight;
Lancelot::Panel * panelDocuments;
Lancelot::NodeLayout * layoutPanelDocuments;
Lancelot::ActionListView * listDocumentsLeft;
Lancelot::ActionListView * listDocumentsRight;
Lancelot::Panel * panelSearch;
Lancelot::NodeLayout * layoutPanelSearch;
Lancelot::ActionListView * listSearchLeft;
Lancelot::NodeLayout * layoutSystem;
Lancelot::ExtenderButton * buttonSystem1;
Lancelot::ExtenderButton * buttonSystem2;
Lancelot::ExtenderButton * buttonSystem3;
Lancelot::ExtenderButton * buttonLancelotContext;

    
    void setupUi(QGraphicsWidget * root)
    {
        /* Initialization */
        layoutMain = new Lancelot::FlipLayout < Lancelot::FullBorderLayout > ();
tabbarSections = new Lancelot::TabBar();tabbarSections->setParentItem(root);
layoutSearch = new Lancelot::NodeLayout();
layoutCenter = new Lancelot::CardLayout();
passagewayApplications = new Lancelot::PassagewayView();passagewayApplications->setParentItem(root);
panelComputer = new Lancelot::Panel();panelComputer->setParentItem(root);
layoutPanelComputer = new Lancelot::NodeLayout();
listComputerLeft = new Lancelot::ActionListView();listComputerLeft->setParentItem(panelComputer);
listComputerRight = new Lancelot::ActionListView();listComputerRight->setParentItem(panelComputer);
panelContacts = new Lancelot::Panel();panelContacts->setParentItem(root);
layoutPanelContacts = new Lancelot::NodeLayout();
listContactsLeft = new Lancelot::ActionListView();listContactsLeft->setParentItem(panelContacts);
listContactsRight = new Lancelot::ActionListView();listContactsRight->setParentItem(panelContacts);
panelDocuments = new Lancelot::Panel();panelDocuments->setParentItem(root);
layoutPanelDocuments = new Lancelot::NodeLayout();
listDocumentsLeft = new Lancelot::ActionListView();listDocumentsLeft->setParentItem(panelDocuments);
listDocumentsRight = new Lancelot::ActionListView();listDocumentsRight->setParentItem(panelDocuments);
panelSearch = new Lancelot::Panel();panelSearch->setParentItem(root);
layoutPanelSearch = new Lancelot::NodeLayout();
listSearchLeft = new Lancelot::ActionListView();listSearchLeft->setParentItem(panelSearch);
layoutSystem = new Lancelot::NodeLayout();
buttonSystem1 = new Lancelot::ExtenderButton();buttonSystem1->setParentItem(root);
buttonSystem2 = new Lancelot::ExtenderButton();buttonSystem2->setParentItem(root);
buttonSystem3 = new Lancelot::ExtenderButton();buttonSystem3->setParentItem(root);
buttonLancelotContext = new Lancelot::ExtenderButton();buttonLancelotContext->setParentItem(root);

        
        /* Setup */
        layoutMain->setSize(SECTIONS_WIDTH, Lancelot::FullBorderLayout::LeftBorder);
layoutMain->setSize(0, Lancelot::FullBorderLayout::RightBorder);
layoutMain->setSize(SEARCH_HEIGHT, Lancelot::FullBorderLayout::TopBorder);
layoutMain->setSize(SYSTEM_HEIGHT + 2 * SYSTEM_PADDING, Lancelot::FullBorderLayout::BottomBorder);
layoutMain->addItem(tabbarSections, Lancelot::FullBorderLayout::Left);
layoutMain->addItem(layoutSearch, Lancelot::FullBorderLayout::Top);
layoutMain->addItem(layoutCenter, Lancelot::FullBorderLayout::Center);
layoutMain->addItem(layoutSystem, Lancelot::FullBorderLayout::Bottom);

tabbarSections->setTabIconSize(QSize(48, 48));

layoutCenter->addItem(passagewayApplications, "applications");layoutCenter->addItem(panelComputer, "computer");layoutCenter->addItem(panelContacts, "contacts");layoutCenter->addItem(panelDocuments, "documents");layoutCenter->addItem(panelSearch, "search");

panelComputer->setGroupByName("InnerPanel");panelComputer->setIcon(KIcon("computer-laptop"));panelComputer->setIconSize(QSize(22, 22));panelComputer->setTitle(i18n("Computer"));panelComputer->setShowingTitle(false);panelComputer->setLayoutItem(layoutPanelComputer);

layoutPanelComputer->addItem(listComputerLeft,
  Lancelot::NodeLayout::NodeCoordinate(0, 0),
  Lancelot::NodeLayout::NodeCoordinate(0.5, 1, -2, 0)
);
layoutPanelComputer->addItem(listComputerRight,
  Lancelot::NodeLayout::NodeCoordinate(0.5, 0),
  Lancelot::NodeLayout::NodeCoordinate(1, 1, 2, 0)
);

listComputerLeft->setGroupByName("ActionListView-Left");listComputerLeft->setExtenderPosition(Lancelot::LeftExtender);
listComputerRight->setGroupByName("ActionListView-Right");listComputerRight->setExtenderPosition(Lancelot::RightExtender);
panelContacts->setGroupByName("InnerPanel");panelContacts->setIcon(KIcon("kontact"));panelContacts->setIconSize(QSize(22, 22));panelContacts->setTitle(i18n("Contacts"));panelContacts->setShowingTitle(false);panelContacts->setLayoutItem(layoutPanelContacts);

layoutPanelContacts->addItem(listContactsLeft,
  Lancelot::NodeLayout::NodeCoordinate(0, 0),
  Lancelot::NodeLayout::NodeCoordinate(0.5, 1, -2, 0)
);
layoutPanelContacts->addItem(listContactsRight,
  Lancelot::NodeLayout::NodeCoordinate(0.5, 0),
  Lancelot::NodeLayout::NodeCoordinate(1, 1, 2, 0)
);

listContactsLeft->setGroupByName("ActionListView-Left");listContactsLeft->setExtenderPosition(Lancelot::LeftExtender);
listContactsRight->setGroupByName("ActionListView-Right");listContactsRight->setExtenderPosition(Lancelot::RightExtender);
panelDocuments->setGroupByName("InnerPanel");panelDocuments->setIcon(KIcon("applications-office"));panelDocuments->setIconSize(QSize(22, 22));panelDocuments->setTitle(i18n("Documents"));panelDocuments->setShowingTitle(false);panelDocuments->setLayoutItem(layoutPanelDocuments);

layoutPanelDocuments->addItem(listDocumentsLeft,
  Lancelot::NodeLayout::NodeCoordinate(0, 0),
  Lancelot::NodeLayout::NodeCoordinate(0.5, 1, -2, 0)
);
layoutPanelDocuments->addItem(listDocumentsRight,
  Lancelot::NodeLayout::NodeCoordinate(0.5, 0),
  Lancelot::NodeLayout::NodeCoordinate(1, 1, 2, 0)
);

listDocumentsLeft->setGroupByName("ActionListView-Left");listDocumentsLeft->setExtenderPosition(Lancelot::LeftExtender);
listDocumentsRight->setGroupByName("ActionListView-Right");listDocumentsRight->setExtenderPosition(Lancelot::RightExtender);
panelSearch->setGroupByName("InnerPanel");panelSearch->setIcon(KIcon("edit-find"));panelSearch->setIconSize(QSize(22, 22));panelSearch->setTitle(i18n("Search"));panelSearch->setShowingTitle(false);panelSearch->setLayoutItem(layoutPanelSearch);

layoutPanelSearch->addItem(listSearchLeft,
  Lancelot::NodeLayout::NodeCoordinate(0, 0),
  Lancelot::NodeLayout::NodeCoordinate(1.0, 1, 0, 0)
);

listSearchLeft->setGroupByName("ActionListView-Left");listSearchLeft->setExtenderPosition(Lancelot::LeftExtender);
layoutSystem->addItem(buttonSystem1,
  Lancelot::NodeLayout::NodeCoordinate(0, 0, 0, SYSTEM_PADDING / 2),
  Lancelot::NodeLayout::NodeCoordinate(1.0 / 3.0, 1, - SYSTEM_HEIGHT * (1.0 / 3.0), - SYSTEM_PADDING)
);
layoutSystem->addItem(buttonSystem2,
  Lancelot::NodeLayout::NodeCoordinate(1.0 / 3.0, 0, - SYSTEM_HEIGHT * (1.0 / 3.0), SYSTEM_PADDING / 2),
  Lancelot::NodeLayout::NodeCoordinate(2.0 / 3.0, 1, - SYSTEM_HEIGHT * (2.0 / 3.0), - SYSTEM_PADDING)
);
layoutSystem->addItem(buttonSystem3,
  Lancelot::NodeLayout::NodeCoordinate(2.0 / 3.0, 0, - SYSTEM_HEIGHT * (2.0 / 3.0), SYSTEM_PADDING / 2),
  Lancelot::NodeLayout::NodeCoordinate(1, 1, - SYSTEM_HEIGHT, - SYSTEM_PADDING)
);
layoutSystem->addItem(buttonLancelotContext,
  Lancelot::NodeLayout::NodeCoordinate(1, 0, 2 - SYSTEM_HEIGHT - SYSTEM_PADDING, SYSTEM_PADDING / 2),
  Lancelot::NodeLayout::NodeCoordinate(1, 1, 0, - SYSTEM_PADDING)
);

buttonSystem1->setGroupByName("SystemButtons");buttonSystem1->setIcon(KIcon("system-lock-screen"));buttonSystem1->setIconSize(QSize(24, 24));buttonSystem1->setTitle(i18n("Lock Session"));buttonSystem1->setExtenderPosition(Lancelot::BottomExtender);buttonSystem1->setActivationMethod(Lancelot::ExtenderActivate);
buttonSystem2->setGroupByName("SystemButtons");buttonSystem2->setIcon(KIcon("system-log-out"));buttonSystem2->setIconSize(QSize(24, 24));buttonSystem2->setTitle(i18n("Log Out"));buttonSystem2->setExtenderPosition(Lancelot::BottomExtender);buttonSystem2->setActivationMethod(Lancelot::ExtenderActivate);
buttonSystem3->setGroupByName("SystemButtons");buttonSystem3->setIcon(KIcon("system-switch-user"));buttonSystem3->setIconSize(QSize(24, 24));buttonSystem3->setTitle(i18n("Switch User"));buttonSystem3->setExtenderPosition(Lancelot::BottomExtender);buttonSystem3->setActivationMethod(Lancelot::ExtenderActivate);
buttonLancelotContext->setGroupByName("LancelotContext");buttonLancelotContext->setIcon(KIcon("lancelot"));buttonLancelotContext->setIconSize(QSize(24, 24));buttonLancelotContext->setExtenderPosition(Lancelot::BottomExtender);buttonLancelotContext->setActivationMethod(Lancelot::ExtenderActivate);

    }
};

} // namespace Ui

#endif /* PUI_LANCELOTWINDOWBASE_H */

