Skip to content

Commit

Permalink
small corrections to multiple Initial
Browse files Browse the repository at this point in the history
  • Loading branch information
alexzhornyak committed Jun 10, 2024
1 parent fc22d30 commit e6bc8f7
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 62 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Powerful tool for creating, editing and debugging SCXML charts.
## Installation
You can find portable version as attached Zip in ScxmlEditor Github Release page

Latest version: **[2.5.4.1768]**
Latest version: **[2.5.4.1769]**

### Windows Installation
#### First Install
Expand Down
2 changes: 1 addition & 1 deletion Src/ScxmlEditor.cbproj
Original file line number Diff line number Diff line change
Expand Up @@ -1015,7 +1015,7 @@
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName">alexander.zhornyak@gmail.com</VersionInfoKeys>
<VersionInfoKeys Name="FileDescription">Scxml State Charts Editor</VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">2.5.4.1768</VersionInfoKeys>
<VersionInfoKeys Name="FileVersion">2.5.4.1769</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright">alexander.zhornyak@gmail.com</VersionInfoKeys>
<VersionInfoKeys Name="LegalTrademarks"/>
Expand Down
Binary file modified Src/ScxmlEditor.res
Binary file not shown.
66 changes: 33 additions & 33 deletions Src/ScxmlEditor_resources.rc
Original file line number Diff line number Diff line change
@@ -1,40 +1,40 @@
PngIf RCData "Images\\if_16_16.png"
CompleteCPP RCData "complete_all_CPP.txt"
PngLog RCData "Images\\log_16_16.png"
PngError RCData "Images\\error_16.png"
PngWatch RCData "Images\\watch_16_16.png"
PngData RCData "Images\\data_16_16.png"
PngAssign RCData "Images\\assign_16_16.png"
PngParam RCData "Images\\param_16_16.png"
PngSessionState RCData "Images\\statemachine_16_16.png"
PngProtocol RCData "Images\\protocol_16_16.png"
PngTransitionXML RCData "Images\\XMLText_Transition_16.png"
CompletePython RCData "complete_all_python.txt"
CompleteDebug RCData "complete_debug.lua"
PngTrigger RCData "Images\\trigger_16_16.png"
ResLogProperties RCData "ScxmlEditor.properties"
PngScript RCData "Images\\script_16_16.png"
PngCancel RCData "Images\\cancel_16_16.png"
CompleteString RCData "complete_string.lua"
PngProtocolWeak RCData "Images\\protocol_weak_16_16.png"
PngSend RCData "Images\\send_16_16.png"
PngFinalize RCData "Images\\finalize_16_16.png"
PngForeach RCData "Images\\foreach_16_16.png"
CompleteBasic RCData "complete_basic.lua"
PngDatamodel RCData "Images\\datamodel_16_16.png"
PngVirtualFolder RCData "Images\\virtual_folder_16_16.png"
PngSend RCData "Images\\send_16_16.png"
PngComment RCData "Images\\comment_16_16.png"
PngRaise RCData "Images\\raise_16_16.png"
CompleteBasic RCData "complete_basic.lua"
PngDatamodel RCData "Images\\datamodel_16_16.png"
CompleteEcmascript RCData "complete_all_js.txt"
CompleteUtf8 RCData "complete_utf8.lua"
PngExtraContent RCData "Images\\extracontent_16_16.png"
CompleteTable RCData "complete_table.lua"
PngForeach RCData "Images\\foreach_16_16.png"
PngFinalize RCData "Images\\finalize_16_16.png"
PngOnEntry RCData "Images\\onenter_16_16.png"
PngSetValue RCData "Images\\setvalue_16_16.png"
PngInvoke RCData "Images\\invoke_16_16.png"
CompleteMath RCData "complete_math.lua"
ResCurPan Cursor "Images\\PanningCursor.cur"
PngContent RCData "Images\\content_16_16.png"
CompleteEcmascript RCData "complete_all_js.txt"
CompleteUtf8 RCData "complete_utf8.lua"
PngOnExit RCData "Images\\onexit_16_16.png"
PngDoneData RCData "Images\\donedata_16_16.png"
CompleteOs RCData "complete_os.lua"
PngOnExit RCData "Images\\onexit_16_16.png"
PngInvoke RCData "Images\\invoke_16_16.png"
PngSetValue RCData "Images\\setvalue_16_16.png"
PngOnEntry RCData "Images\\onenter_16_16.png"
PngContent RCData "Images\\content_16_16.png"
ResCurPan Cursor "Images\\PanningCursor.cur"
CompleteMath RCData "complete_math.lua"
PngData RCData "Images\\data_16_16.png"
PngAssign RCData "Images\\assign_16_16.png"
PngProtocol RCData "Images\\protocol_16_16.png"
PngParam RCData "Images\\param_16_16.png"
PngSessionState RCData "Images\\statemachine_16_16.png"
CompleteCPP RCData "complete_all_CPP.txt"
PngIf RCData "Images\\if_16_16.png"
PngError RCData "Images\\error_16.png"
PngWatch RCData "Images\\watch_16_16.png"
PngLog RCData "Images\\log_16_16.png"
CompleteString RCData "complete_string.lua"
PngCancel RCData "Images\\cancel_16_16.png"
PngProtocolWeak RCData "Images\\protocol_weak_16_16.png"
ResLogProperties RCData "ScxmlEditor.properties"
PngScript RCData "Images\\script_16_16.png"
PngTrigger RCData "Images\\trigger_16_16.png"
PngTransitionXML RCData "Images\\XMLText_Transition_16.png"
CompleteDebug RCData "complete_debug.lua"
CompletePython RCData "complete_all_python.txt"
62 changes: 35 additions & 27 deletions Src/UnitScxmlBaseShape.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2056,44 +2056,52 @@ void __fastcall TVisualScxmlBaseShape::DrawShapeCanvas(Tecanvas::TCanvas3D * ACa
break;
}

TTreeNodeShape *AParent = dynamic_cast<TTreeNodeShape*>(AVisualParent->Parent);
while (AParent) {
if (!this->SimpleText.IsEmpty()) {

TVisualScxmlBaseShape * AVisualUpperParent = dynamic_cast<TVisualScxmlBaseShape*>(AParent);
if (AVisualUpperParent) {
if (AVisualUpperParent->ExcludeFromSave) {
break;
}
TTreeNodeShape *AParent = dynamic_cast<TTreeNodeShape*>(AVisualParent->Parent);
while (AParent) {

bool bIsNestedInitial = false;
TVisualScxmlBaseShape * AVisualUpperParent = dynamic_cast<TVisualScxmlBaseShape*>(AParent);
if (AVisualUpperParent) {
if (AVisualUpperParent->ExcludeFromSave) {
break;
}

switch(AVisualUpperParent->StateChildType) {
case sctScxml:
case sctState: {
if (AVisualUpperParent->FInitial == this->SimpleText) {
bIsNestedInitial = true;
}
}break;
}
bool bIsNestedInitial = false;

switch(AVisualUpperParent->StateChildType) {
case sctScxml:
case sctState: {
std::auto_ptr<TStringList>AInitialList(new TStringList);
AInitialList->StrictDelimiter = true;
AInitialList->Delimiter = L' ';
AInitialList->DelimitedText = AVisualUpperParent->FInitial;
if (AInitialList->IndexOf(this->SimpleText) != -1) {
bIsNestedInitial = true;
}
}break;
}

if (bIsNestedInitial) {
ACanvas->Brush->Color = SettingsData->ThemeSettings->StateInitialBorderColor;
ACanvas->Pen->Color = clBlack;

if (bIsNestedInitial) {
ACanvas->Brush->Color = SettingsData->ThemeSettings->StateInitialBorderColor;
ACanvas->Pen->Color = clBlack;
if (this->StateChildType == sctFinal) {

if (this->StateChildType == sctFinal) {
ACanvas->EllipseWithZ(TRect(R.Left - 4, R.Top - 10, R.Left + 6, R.Top), TeeTreeZ);

ACanvas->EllipseWithZ(TRect(R.Left - 4, R.Top - 10, R.Left + 6, R.Top), TeeTreeZ);
}
else {
ACanvas->EllipseWithZ(TRect(R.Left + 4, R.Top + 4, R.Left + 14, R.Top + 14), TeeTreeZ);
}

break;
}
else {
ACanvas->EllipseWithZ(TRect(R.Left + 4, R.Top + 4, R.Left + 14, R.Top + 14), TeeTreeZ);
}

break;
}

AParent = AParent->Parent;
}

AParent = AParent->Parent;
}

}
Expand Down

0 comments on commit e6bc8f7

Please sign in to comment.