You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

203 lines
4.1 KiB

10 years ago
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Layouts 1.1
import QtQuick.Controls.Styles 1.3
10 years ago
import "js/ErrorLocationFormater.js" as ErrorLocationFormater
import "."
10 years ago
Rectangle {
10 years ago
id: statusHeader
objectName: "statusPane"
10 years ago
function updateStatus(message)
10 years ago
{
if (!message)
10 years ago
{
status.state = "";
status.text = qsTr("Compile successfully.");
10 years ago
logslink.visible = false;
debugImg.state = "active";
10 years ago
}
else
{
status.state = "error";
var errorInfo = ErrorLocationFormater.extractErrorInfo(message, true);
10 years ago
status.text = errorInfo.errorLocation + " " + errorInfo.errorDetail;
logslink.visible = true;
debugImg.state = "";
10 years ago
}
debugRunActionIcon.enabled = codeModel.hasContract;
10 years ago
}
10 years ago
10 years ago
function infoMessage(text)
{
status.state = "";
status.text = text
logslink.visible = false;
}
function errorMessage(text)
{
status.state = "error";
status.text = text
logslink.visible = false;
}
10 years ago
Connections {
target:clientModel
10 years ago
onRunStarted: infoMessage(qsTr("Running transactions..."));
onRunFailed: errorMessage(qsTr("Error running transactions"));
10 years ago
onRunComplete: infoMessage(qsTr("Run complete"));
onNewBlock: infoMessage(qsTr("New block created"));
}
10 years ago
Connections {
target:projectModel
onDeploymentStarted: infoMessage(qsTr("Running deployment..."));
onDeploymentError: errorMessage(error);
10 years ago
onDeploymentComplete: infoMessage(qsTr("Deployment complete"));
onDeploymentStepChanged: infoMessage(message);
10 years ago
}
Connections {
target: codeModel
onCompilationComplete: updateStatus();
onCompilationError: updateStatus(_error);
}
10 years ago
color: "transparent"
10 years ago
anchors.fill: parent
10 years ago
Rectangle {
id: statusContainer
10 years ago
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
radius: 3
width: 500
height: 30
color: "#fcfbfc"
Text {
anchors.verticalCenter: parent.verticalCenter
10 years ago
anchors.horizontalCenter: parent.horizontalCenter
font.pointSize: StatusPaneStyle.general.statusFontSize
height: 15
font.family: "sans serif"
objectName: "status"
wrapMode: Text.WrapAnywhere
elide: Text.ElideRight
maximumLineCount: 1
clip: true
id: status
states: [
State {
name: "error"
PropertyChanges {
target: status
color: "red"
}
PropertyChanges {
target: statusContainer
color: "#fffcd5"
}
}
]
onTextChanged:
{
updateWidth()
toolTipInfo.tooltip = text;
}
function updateWidth()
{
if (text.length > 80)
width = parent.width - 10
else
width = undefined
}
}
Button
{
anchors.fill: parent
id: toolTip
action: toolTipInfo
text: ""
style:
ButtonStyle {
background:Rectangle {
color: "transparent"
10 years ago
}
}
}
Action {
id: toolTipInfo
tooltip: ""
}
10 years ago
}
10 years ago
Button
{
id: logslink
anchors.left: statusContainer.right
anchors.leftMargin: 9
visible: false
anchors.verticalCenter: parent.verticalCenter
action: displayLogAction
iconSource: "qrc:/qml/img/search_filled.png"
}
Action {
id: displayLogAction
tooltip: qsTr("Display Log")
onTriggered: {
mainContent.displayCompilationErrorIfAny();
}
}
10 years ago
Rectangle
{
color: "transparent"
width: 100
height: parent.height
anchors.top: statusHeader.top
anchors.right: statusHeader.right
RowLayout
{
anchors.fill: parent
anchors.top: statusHeader.top
anchors.right: statusHeader.right
Rectangle
{
10 years ago
color: "transparent"
anchors.fill: parent
10 years ago
Button
{
anchors.right: parent.right
anchors.rightMargin: 9
10 years ago
anchors.verticalCenter: parent.verticalCenter
id: debugImg
iconSource: "qrc:/qml/img/bugiconinactive.png"
action: debugRunActionIcon
states: [
State{
name: "active"
PropertyChanges { target: debugImg; iconSource: "qrc:/qml/img/bugiconactive.png"}
}
]
10 years ago
}
Action {
id: debugRunActionIcon
onTriggered: {
if (mainContent.rightViewIsVisible())
mainContent.hideRightView()
else
mainContent.startQuickDebugging();
10 years ago
}
enabled: false
}
}
}
}
10 years ago
}