faking success.
This commit is contained in:
@@ -59,9 +59,12 @@ XQItem* XQMainModel::createTreeEntry( XQNodePtr contentNode )
|
|||||||
{
|
{
|
||||||
for(const auto& section : _sections )
|
for(const auto& section : _sections )
|
||||||
{
|
{
|
||||||
|
qDebug() << " --- wtf1: " << contentNode->to_string();
|
||||||
|
qDebug() << " --- wtf2: " << section.sheetRootNode->to_string();
|
||||||
|
|
||||||
if( contentNode->attribute("State") == section.sheetRootNode->attribute("State") )
|
if( contentNode->attribute("State") == section.sheetRootNode->attribute("State") )
|
||||||
{
|
{
|
||||||
XQItem* newTreeentry = _itemFactory.makeContentItem( contentNode, section.sheetRootNode );
|
XQItem* newTreeentry = _itemFactory.makeTreeChildItem( contentNode, section.sheetRootNode );
|
||||||
section.headerItem().appendRow( newTreeentry );
|
section.headerItem().appendRow( newTreeentry );
|
||||||
_treeTable->expand( section.modelIndex );
|
_treeTable->expand( section.modelIndex );
|
||||||
// ??
|
// ??
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
#include <xqnodewriter.h>
|
#include <xqnodewriter.h>
|
||||||
|
|
||||||
|
|
||||||
//! firz
|
//! konstruktor.
|
||||||
|
|
||||||
XQMainWindow::XQMainWindow( QWidget* parent )
|
XQMainWindow::XQMainWindow( QWidget* parent )
|
||||||
: QMainWindow(parent)
|
: QMainWindow(parent)
|
||||||
@@ -34,7 +34,7 @@ XQMainWindow::XQMainWindow( QWidget* parent )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//! firz
|
//! actions & document struktur einrichten.
|
||||||
|
|
||||||
void XQMainWindow::initMainWindow()
|
void XQMainWindow::initMainWindow()
|
||||||
{
|
{
|
||||||
@@ -67,6 +67,7 @@ void XQMainWindow::initMainWindow()
|
|||||||
connect( _mainTreeView, SIGNAL(clicked(QModelIndex)), this, SLOT(onTreeItemClicked(QModelIndex)) );
|
connect( _mainTreeView, SIGNAL(clicked(QModelIndex)), this, SLOT(onTreeItemClicked(QModelIndex)) );
|
||||||
connect( _tabWidget, SIGNAL(tabBarClicked(int)), this, SLOT(onTabClicked(int)) );
|
connect( _tabWidget, SIGNAL(tabBarClicked(int)), this, SLOT(onTabClicked(int)) );
|
||||||
|
|
||||||
|
|
||||||
connect( &_mainModelView, &XQViewModel::xqItemCreated, this, [=, this](XQItem* item)
|
connect( &_mainModelView, &XQViewModel::xqItemCreated, this, [=, this](XQItem* item)
|
||||||
{
|
{
|
||||||
// when a new main tree item has been created ...
|
// when a new main tree item has been created ...
|
||||||
@@ -102,7 +103,7 @@ void XQMainWindow::initMainWindow()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//! firz
|
//! slot für zentrales undo
|
||||||
|
|
||||||
void XQMainWindow::onUndo()
|
void XQMainWindow::onUndo()
|
||||||
{
|
{
|
||||||
@@ -113,14 +114,13 @@ void XQMainWindow::onUndo()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//!
|
//! slot für zentrales redo
|
||||||
|
|
||||||
void XQMainWindow::onRedo()
|
void XQMainWindow::onRedo()
|
||||||
{
|
{
|
||||||
qDebug() << " --- redo Pressed";
|
qDebug() << " --- redo Pressed";
|
||||||
if(_undoStack.canRedo())
|
if(_undoStack.canRedo())
|
||||||
_undoStack.redo();
|
_undoStack.redo();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -214,8 +214,9 @@ void XQMainWindow::onAbout()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//! firz
|
//! wenn ein item im navigations-baum geklickt wird, soll die document
|
||||||
// when item in the left tree is clicked, switch view on the right side
|
//! view rechts angepasst werden.
|
||||||
|
|
||||||
void XQMainWindow::onTreeItemClicked(const QModelIndex& index )
|
void XQMainWindow::onTreeItemClicked(const QModelIndex& index )
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -234,8 +235,8 @@ void XQMainWindow::onTreeItemClicked(const QModelIndex& index )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//! firz
|
//! beim click auf ein tab im linken fenster wird der navigationsbaum angepasst.
|
||||||
// when item in the left tree is clicked, switch view on the right side
|
|
||||||
void XQMainWindow::onTabClicked( int index )
|
void XQMainWindow::onTabClicked( int index )
|
||||||
{
|
{
|
||||||
const QString& key = _documentStore[index].treeItem->attribute( c_ProjectID );
|
const QString& key = _documentStore[index].treeItem->attribute( c_ProjectID );
|
||||||
@@ -293,7 +294,9 @@ void XQMainWindow::loadDocument( const QString& fileName )
|
|||||||
|
|
||||||
// read the model data
|
// read the model data
|
||||||
childModel->setContent( contentRoot->first_child() );
|
childModel->setContent( contentRoot->first_child() );
|
||||||
|
|
||||||
// create new entry in the left side main tree view
|
// create new entry in the left side main tree view
|
||||||
|
|
||||||
XQItem* newEntry = _mainModelView.createTreeEntry( contentRoot );
|
XQItem* newEntry = _mainModelView.createTreeEntry( contentRoot );
|
||||||
_mainTreeView->setCurrentIndex( newEntry->index() );
|
_mainTreeView->setCurrentIndex( newEntry->index() );
|
||||||
_documentStore.addDocument( fileName, pTitle, newEntry, childModel );
|
_documentStore.addDocument( fileName, pTitle, newEntry, childModel );
|
||||||
|
@@ -115,20 +115,6 @@ XQNodePtr XQItemFactory::findModelSheet( const QString& modelName ) const
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
XQItem* XQItemFactory::makeContentItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry )
|
|
||||||
{
|
|
||||||
// den itemtype des neuen items rausfinden
|
|
||||||
QString typeKey = sheetEntry->attribute("ItemType");
|
|
||||||
//XQItemType* itemType = findItemTypeTemplate(typeKey); // throws
|
|
||||||
XQItemType* itemType = makeItemType(sheetEntry); // throws
|
|
||||||
|
|
||||||
const QString* contentPtr = contentNode->attribute_ptr( sheetEntry->tag_name() );
|
|
||||||
|
|
||||||
XQItem* newItem = new XQItem( itemType, contentPtr );
|
|
||||||
|
|
||||||
return newItem;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
XQItem* XQItemFactory::makeHeaderItem( const XQNodePtr& sheetEntry )
|
XQItem* XQItemFactory::makeHeaderItem( const XQNodePtr& sheetEntry )
|
||||||
{
|
{
|
||||||
@@ -140,15 +126,42 @@ XQItem* XQItemFactory::makeHeaderItem( const XQNodePtr& sheetEntry )
|
|||||||
|
|
||||||
// den itemtype des neuen items rausfinden
|
// den itemtype des neuen items rausfinden
|
||||||
QString typeKey = sheetEntry->attribute("HeaderItemType");
|
QString typeKey = sheetEntry->attribute("HeaderItemType");
|
||||||
XQItemType* itemType = findItemTypeTemplate(typeKey); // throws
|
//XQItemType* itemType = makeItemType(sheetEntry); // throws
|
||||||
|
XQItemType* itemType = findItemTypeTemplate(typeKey);
|
||||||
// das ist Unterschied zum normalen Item: Der Titel kommt aus der Modelbeschreibung
|
// das ist Unterschied zum normalen Item: Der Titel kommt aus der Modelbeschreibung
|
||||||
const QString* contentPtr = sheetEntry->attribute_ptr("HeaderCaption");
|
const QString* contentPtr = sheetEntry->attribute_ptr("HeaderCaption");
|
||||||
|
|
||||||
XQItem* newHeaderItem = new XQItem( itemType, contentPtr );
|
return new XQItem( itemType, contentPtr );
|
||||||
|
|
||||||
return newHeaderItem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
XQItem* XQItemFactory::makeContentItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry )
|
||||||
|
{
|
||||||
|
// den itemtype des neuen items rausfinden
|
||||||
|
QString typeKey = sheetEntry->attribute("ItemType");
|
||||||
|
//XQItemType* itemType = findItemTypeTemplate(typeKey); // throws
|
||||||
|
XQItemType* itemType = makeItemType(sheetEntry); // throws
|
||||||
|
|
||||||
|
const QString* contentPtr = contentNode->attribute_ptr( sheetEntry->tag_name() );
|
||||||
|
|
||||||
|
return new XQItem( itemType, contentPtr );
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
XQItem* XQItemFactory::makeTreeChildItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry )
|
||||||
|
{
|
||||||
|
// den itemtype des neuen items rausfinden
|
||||||
|
QString typeKey = sheetEntry->attribute("ItemType");
|
||||||
|
XQItemType* itemType = findItemTypeTemplate(typeKey); // throws
|
||||||
|
//XQItemType* itemType = makeItemType(sheetEntry); // throws
|
||||||
|
|
||||||
|
const QString* contentPtr = contentNode->attribute_ptr( "ProjectName" );
|
||||||
|
|
||||||
|
XQItem* newItem = new XQItem( itemType, contentPtr );
|
||||||
|
|
||||||
|
return newItem;
|
||||||
|
}
|
||||||
|
|
||||||
void XQItemFactory::setItemDataFromString( XQItem& item, const QString& roleKey, const QString& source ) const
|
void XQItemFactory::setItemDataFromString( XQItem& item, const QString& roleKey, const QString& source ) const
|
||||||
{
|
{
|
||||||
|
@@ -34,6 +34,7 @@ public:
|
|||||||
|
|
||||||
XQItem* makeHeaderItem(const XQNodePtr& typeSheetNode );
|
XQItem* makeHeaderItem(const XQNodePtr& typeSheetNode );
|
||||||
XQItem* makeContentItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry );
|
XQItem* makeContentItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry );
|
||||||
|
XQItem* makeTreeChildItem( const XQNodePtr& contentNode, const XQNodePtr& sheetEntry );
|
||||||
|
|
||||||
virtual XQItemList makeHeaderRow( const XQNodePtr& sheetNode );
|
virtual XQItemList makeHeaderRow( const XQNodePtr& sheetNode );
|
||||||
virtual XQItemList makeContentRow( const XQNodePtr& contentNode, const XQNodePtr& sheetNode );
|
virtual XQItemList makeContentRow( const XQNodePtr& contentNode, const XQNodePtr& sheetNode );
|
||||||
|
@@ -224,6 +224,7 @@ namespace znode
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//! hängt einen knoten an meine kinderliste an.
|
||||||
int add_child( const zshared_node& node )
|
int add_child( const zshared_node& node )
|
||||||
{
|
{
|
||||||
_children.push_back( node );
|
_children.push_back( node );
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
<?xml version='1.0' encoding='UTF-8'?>
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
|
||||||
<Project ProjectID="HA01" FriendlyName="@ProjectName" ProjectName="Wiebelbach West" Established="2006" WattPeak="84000" State="runnning">
|
<Project ProjectID="HA01" FriendlyName="@ProjectName" ProjectName="Wiebelbach West" Established="2006" WattPeak="84000" State="runnning" LastFileName="modelData1.xtr">
|
||||||
<Components>
|
<Components>
|
||||||
|
|
||||||
<Panel PanelID="#1 JA 01" FriendlyName="@PanelName" PanelName="JA 01 Solar T62B" Manufacturer="JA Solar 1 XX" WattPeak="620" Height="2,70" Width="1,10" Weight="12" MaxVolt="67" MaxAmpere="11">
|
<Panel PanelID="#1 JA 01" FriendlyName="@PanelName" PanelName="JA 01 Solar T62B" Manufacturer="JA Solar 1 XX" WattPeak="620" Height="2,70" Width="1,10" Weight="12" MaxVolt="67" MaxAmpere="11">
|
||||||
|
@@ -7,16 +7,16 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<ItemTypes>
|
<ItemTypes>
|
||||||
|
<TreeParentType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDropEnabled" Icon="folder-new" />
|
||||||
|
<TreeChildType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDragEnabled|IsSelectable|IsDropEnabled"/>
|
||||||
|
<HeaderType RenderStyle="HeaderStyle" ItemFlags="IsEnabled" Icon="battery"/>
|
||||||
<HiddenType RenderStyle="HiddenStyle"/>
|
<HiddenType RenderStyle="HiddenStyle"/>
|
||||||
<StaticType RenderStyle="PlainStyle"/>
|
<StaticType RenderStyle="PlainStyle"/>
|
||||||
<TreeChildType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDragEnabled|IsSelectable|IsDropEnabled"/>
|
|
||||||
<PlainType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable"/>
|
<PlainType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable"/>
|
||||||
<ValueType RenderStyle="FormattedStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable" UnitType="Coulomb"/>
|
<ValueType RenderStyle="FormattedStyle" ItemFlags="IsEnabled|IsEditable|IsSelectable" UnitType="Coulomb"/>
|
||||||
<PercentageType RenderStyle="ProgressBarStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
<PercentageType RenderStyle="ProgressBarStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
||||||
<ChoiceType RenderStyle="ComboBoxStyle" ItemFlags="IsEnabled|IsSelectable|IsEditable" FixedChoices="la|le|lo|lu"/>
|
<ChoiceType RenderStyle="ComboBoxStyle" ItemFlags="IsEnabled|IsSelectable|IsEditable" FixedChoices="la|le|lo|lu"/>
|
||||||
<IntValueType RenderStyle="SpinBoxStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
<IntValueType RenderStyle="SpinBoxStyle" ItemFlags="IsEnabled|IsSelectable"/>
|
||||||
<TreeParentType RenderStyle="PlainStyle" ItemFlags="IsEnabled|IsDropEnabled" Icon="battery" />
|
|
||||||
<HeaderType RenderStyle="HeaderStyle" ItemFlags="IsEnabled" Icon="battery"/>
|
|
||||||
</ItemTypes>
|
</ItemTypes>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
@@ -25,11 +25,25 @@
|
|||||||
-->
|
-->
|
||||||
|
|
||||||
<DocumentTreeModel>
|
<DocumentTreeModel>
|
||||||
<ActiveProjects HeaderItemType="TreeParentType" HeaderCaption="Active Projects" ItemType="ValueType" ItemFlags="IsEnabled|IsDropEnabled" RenderStyle="HeaderStyle" State="runnning"/>
|
<ActiveProjects ItemType="PlainType" HeaderItemType="TreeParentType" HeaderCaption="Active Projects" State="runnning">
|
||||||
<PlannedProjects HeaderItemType="TreeParentType" HeaderCaption="Planned Projects" ItemType="ValueType" ItemFlags="IsEnabled|IsDropEnabled" RenderStyle="HeaderStyle" State="planned"/>
|
<Project ItemType="farz" HeaderItemType="TreeChildType" Icon="list-add"/>
|
||||||
<FinishedProjectss HeaderItemType="TreeParentType" HeaderCaption="Finished Projects" ItemType="ValueType" ItemFlags="IsEnabled|IsDropEnabled" RenderStyle="HeaderStyle" State="finished"/>
|
</ActiveProjects>
|
||||||
|
<PlannedProjects HeaderItemType="TreeParentType" HeaderCaption="Planned Projects" State="planned">
|
||||||
|
<Project ItemType="TreeChildType" Icon="list-add"/>
|
||||||
|
</PlannedProjects>
|
||||||
|
<FinishedProjects HeaderItemType="TreeParentType" HeaderCaption="Finished Projects" State="finished">
|
||||||
|
<Project ItemType="TreeChildType" Icon="list-remove"/>
|
||||||
|
</FinishedProjects>
|
||||||
</DocumentTreeModel>
|
</DocumentTreeModel>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<DocumentTreeModelX>
|
||||||
|
<ActiveProjects ItemType="TreeParentType" HeaderCaption="Active Projects" ItemType="ValueType" State="runnning"/>
|
||||||
|
<PlannedProjects HeaderItemType="TreeParentType" HeaderCaption="Planned Projects" ItemType="ValueType" State="planned"/>
|
||||||
|
<FinishedProjects HeaderItemType="TreeParentType" HeaderCaption="Finished Projects" ItemType="ValueType" State="finished"/>
|
||||||
|
</DocumenTreeModelX>
|
||||||
|
-->
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
DocumentDetailsModel:
|
DocumentDetailsModel:
|
||||||
-->
|
-->
|
||||||
|
Reference in New Issue
Block a user