@@ -4,19 +4,19 @@ import '../viewmodels/design_canvas_viewmodel.dart';
44
55class CodeGeneratorService {
66 static String generateCode (WidgetNode scaffoldWidget, AppTheme theme) {
7- // If root is SDUI , output Dart code using SDUI widgets
8- if (scaffoldWidget.type.startsWith ('Sdui ' )) {
9- final sduiWidget = DesignCanvasViewModel ().widgetNodeToSduiWidget (scaffoldWidget);
7+ // If root is Glimpse , output Dart code using Glimpse widgets
8+ if (scaffoldWidget.type.startsWith ('Glimpse ' )) {
9+ final glimpseWidget = DesignCanvasViewModel ().widgetNodeToGlimpseWidget (scaffoldWidget);
1010 final buffer = StringBuffer ();
1111 buffer.writeln ("import 'package:flutter/material.dart';" );
12- buffer.writeln ("import 'package:flutter_sdui/flutter_sdui .dart';" );
12+ buffer.writeln ("import 'package:flutter_glimpse/flutter_glimpse .dart';" );
1313 buffer.writeln ('' );
14- buffer.writeln ('class GeneratedSduiWidget extends StatelessWidget {' );
15- buffer.writeln (' const GeneratedSduiWidget ({super.key});' );
14+ buffer.writeln ('class GeneratedGlimpseWidget extends StatelessWidget {' );
15+ buffer.writeln (' const GeneratedGlimpseWidget ({super.key});' );
1616 buffer.writeln ('' );
1717 buffer.writeln (' @override' );
1818 buffer.writeln (' Widget build(BuildContext context) {' );
19- buffer.writeln (' return ${_generateSduiWidgetCode ( sduiWidget , 2 )};' );
19+ buffer.writeln (' return ${_generateGlimpseWidgetCode ( glimpseWidget , 2 )};' );
2020 buffer.writeln (' }' );
2121 buffer.writeln ('}' );
2222 return buffer.toString ();
@@ -36,100 +36,100 @@ class CodeGeneratorService {
3636 return buffer.toString ();
3737 }
3838
39- static String _generateSduiWidgetCode (dynamic sduiWidget , int indent) {
39+ static String _generateGlimpseWidgetCode (dynamic glimpseWidget , int indent) {
4040 final indentStr = ' ' * indent;
4141 final buffer = StringBuffer ();
42- final type = sduiWidget .runtimeType.toString ();
42+ final type = glimpseWidget .runtimeType.toString ();
4343 switch (type) {
44- case 'SduiScaffold ' :
45- buffer.write ('SduiScaffold (' );
46- if (sduiWidget .appBar != null ) buffer.write ('\n ${indentStr }appBar: ${_generateSduiWidgetCode ( sduiWidget .appBar , indent + 1 )},' );
47- if (sduiWidget .backgroundColor != null ) buffer.write ('\n ${indentStr }backgroundColor: Color(${sduiWidget .backgroundColor .value }),' );
48- if (sduiWidget .body != null ) buffer.write ('\n ${indentStr }body: ${_generateSduiWidgetCode ( sduiWidget .body , indent + 1 )},' );
44+ case 'GlimpseScaffold ' :
45+ buffer.write ('GlimpseScaffold (' );
46+ if (glimpseWidget .appBar != null ) buffer.write ('\n ${indentStr }appBar: ${_generateGlimpseWidgetCode ( glimpseWidget .appBar , indent + 1 )},' );
47+ if (glimpseWidget .backgroundColor != null ) buffer.write ('\n ${indentStr }backgroundColor: Color(${glimpseWidget .backgroundColor .value }),' );
48+ if (glimpseWidget .body != null ) buffer.write ('\n ${indentStr }body: ${_generateGlimpseWidgetCode ( glimpseWidget .body , indent + 1 )},' );
4949 buffer.write ('\n ${' ' * (indent - 1 )})' );
5050 break ;
51- case 'SduiColumn ' :
52- buffer.write ('SduiColumn (' );
53- if (sduiWidget .children != null && sduiWidget .children.isNotEmpty) {
51+ case 'GlimpseColumn ' :
52+ buffer.write ('GlimpseColumn (' );
53+ if (glimpseWidget .children != null && glimpseWidget .children.isNotEmpty) {
5454 buffer.write ('\n ${indentStr }children: [' );
55- for (final child in sduiWidget .children) {
56- buffer.write ('\n ${indentStr } ${_generateSduiWidgetCode (child , indent + 2 )},' );
55+ for (final child in glimpseWidget .children) {
56+ buffer.write ('\n ${indentStr } ${_generateGlimpseWidgetCode (child , indent + 2 )},' );
5757 }
5858 buffer.write ('\n ${indentStr }],' );
5959 }
60- if (sduiWidget .mainAxisAlignment != null ) buffer.write ('\n ${indentStr }mainAxisAlignment: MainAxisAlignment.${sduiWidget .mainAxisAlignment .toString ().split ('.' ).last },' );
61- if (sduiWidget .crossAxisAlignment != null ) buffer.write ('\n ${indentStr }crossAxisAlignment: CrossAxisAlignment.${sduiWidget .crossAxisAlignment .toString ().split ('.' ).last },' );
60+ if (glimpseWidget .mainAxisAlignment != null ) buffer.write ('\n ${indentStr }mainAxisAlignment: MainAxisAlignment.${glimpseWidget .mainAxisAlignment .toString ().split ('.' ).last },' );
61+ if (glimpseWidget .crossAxisAlignment != null ) buffer.write ('\n ${indentStr }crossAxisAlignment: CrossAxisAlignment.${glimpseWidget .crossAxisAlignment .toString ().split ('.' ).last },' );
6262 buffer.write ('\n ${' ' * (indent - 1 )})' );
6363 break ;
64- case 'SduiRow ' :
65- buffer.write ('SduiRow (' );
66- if (sduiWidget .children != null && sduiWidget .children.isNotEmpty) {
64+ case 'GlimpseRow ' :
65+ buffer.write ('GlimpseRow (' );
66+ if (glimpseWidget .children != null && glimpseWidget .children.isNotEmpty) {
6767 buffer.write ('\n ${indentStr }children: [' );
68- for (final child in sduiWidget .children) {
69- buffer.write ('\n ${indentStr } ${_generateSduiWidgetCode (child , indent + 2 )},' );
68+ for (final child in glimpseWidget .children) {
69+ buffer.write ('\n ${indentStr } ${_generateGlimpseWidgetCode (child , indent + 2 )},' );
7070 }
7171 buffer.write ('\n ${indentStr }],' );
7272 }
73- if (sduiWidget .mainAxisAlignment != null ) buffer.write ('\n ${indentStr }mainAxisAlignment: MainAxisAlignment.${sduiWidget .mainAxisAlignment .toString ().split ('.' ).last },' );
74- if (sduiWidget .crossAxisAlignment != null ) buffer.write ('\n ${indentStr }crossAxisAlignment: CrossAxisAlignment.${sduiWidget .crossAxisAlignment .toString ().split ('.' ).last },' );
73+ if (glimpseWidget .mainAxisAlignment != null ) buffer.write ('\n ${indentStr }mainAxisAlignment: MainAxisAlignment.${glimpseWidget .mainAxisAlignment .toString ().split ('.' ).last },' );
74+ if (glimpseWidget .crossAxisAlignment != null ) buffer.write ('\n ${indentStr }crossAxisAlignment: CrossAxisAlignment.${glimpseWidget .crossAxisAlignment .toString ().split ('.' ).last },' );
7575 buffer.write ('\n ${' ' * (indent - 1 )})' );
7676 break ;
77- case 'SduiContainer ' :
78- buffer.write ('SduiContainer (' );
79- if (sduiWidget .width != null ) buffer.write ('\n ${indentStr }width: ${sduiWidget .width },' );
80- if (sduiWidget .height != null ) buffer.write ('\n ${indentStr }height: ${sduiWidget .height },' );
81- if (sduiWidget .color != null ) buffer.write ('\n ${indentStr }color: Color(${sduiWidget .color .value }),' );
82- if (sduiWidget .child != null ) buffer.write ('\n ${indentStr }child: ${_generateSduiWidgetCode ( sduiWidget .child , indent + 1 )},' );
77+ case 'GlimpseContainer ' :
78+ buffer.write ('GlimpseContainer (' );
79+ if (glimpseWidget .width != null ) buffer.write ('\n ${indentStr }width: ${glimpseWidget .width },' );
80+ if (glimpseWidget .height != null ) buffer.write ('\n ${indentStr }height: ${glimpseWidget .height },' );
81+ if (glimpseWidget .color != null ) buffer.write ('\n ${indentStr }color: Color(${glimpseWidget .color .value }),' );
82+ if (glimpseWidget .child != null ) buffer.write ('\n ${indentStr }child: ${_generateGlimpseWidgetCode ( glimpseWidget .child , indent + 1 )},' );
8383 buffer.write ('\n ${' ' * (indent - 1 )})' );
8484 break ;
85- case 'SduiText ' :
86- buffer.write ('SduiText (' );
87- buffer.write ("'${sduiWidget .text .replaceAll ("'" , "\\ '" )}'" );
88- if (sduiWidget .fontSize != null ) buffer.write (', fontSize: ${sduiWidget .fontSize }' );
89- if (sduiWidget .color != null ) buffer.write (', color: Color(${sduiWidget .color .value })' );
90- if (sduiWidget .textAlign != null ) buffer.write (', textAlign: TextAlign.${sduiWidget .textAlign .toString ().split ('.' ).last }' );
85+ case 'GlimpseText ' :
86+ buffer.write ('GlimpseText (' );
87+ buffer.write ("'${glimpseWidget .text .replaceAll ("'" , "\\ '" )}'" );
88+ if (glimpseWidget .fontSize != null ) buffer.write (', fontSize: ${glimpseWidget .fontSize }' );
89+ if (glimpseWidget .color != null ) buffer.write (', color: Color(${glimpseWidget .color .value })' );
90+ if (glimpseWidget .textAlign != null ) buffer.write (', textAlign: TextAlign.${glimpseWidget .textAlign .toString ().split ('.' ).last }' );
9191 buffer.write (')' );
9292 break ;
93- case 'SduiImage ' :
94- buffer.write ('SduiImage (' );
95- buffer.write ("'${sduiWidget .src }'" );
96- if (sduiWidget .width != null ) buffer.write (', width: ${sduiWidget .width }' );
97- if (sduiWidget .height != null ) buffer.write (', height: ${sduiWidget .height }' );
98- if (sduiWidget .fit != null ) buffer.write (', fit: BoxFit.${sduiWidget .fit .toString ().split ('.' ).last }' );
93+ case 'GlimpseImage ' :
94+ buffer.write ('GlimpseImage (' );
95+ buffer.write ("'${glimpseWidget .src }'" );
96+ if (glimpseWidget .width != null ) buffer.write (', width: ${glimpseWidget .width }' );
97+ if (glimpseWidget .height != null ) buffer.write (', height: ${glimpseWidget .height }' );
98+ if (glimpseWidget .fit != null ) buffer.write (', fit: BoxFit.${glimpseWidget .fit .toString ().split ('.' ).last }' );
9999 buffer.write (')' );
100100 break ;
101- case 'SduiIcon ' :
102- buffer.write ('SduiIcon (' );
103- if (sduiWidget .icon != null ) buffer.write ('icon: ${sduiWidget .icon },' );
104- if (sduiWidget .size != null ) buffer.write ('size: ${sduiWidget .size },' );
105- if (sduiWidget .color != null ) buffer.write ('color: Color(${sduiWidget .color .value }),' );
101+ case 'GlimpseIcon ' :
102+ buffer.write ('GlimpseIcon (' );
103+ if (glimpseWidget .icon != null ) buffer.write ('icon: ${glimpseWidget .icon },' );
104+ if (glimpseWidget .size != null ) buffer.write ('size: ${glimpseWidget .size },' );
105+ if (glimpseWidget .color != null ) buffer.write ('color: Color(${glimpseWidget .color .value }),' );
106106 buffer.write (')' );
107107 break ;
108- case 'SduiSpacer ' :
109- buffer.write ('SduiSpacer (' );
110- if (sduiWidget .flex != null ) buffer.write ('flex: ${sduiWidget .flex },' );
108+ case 'GlimpseSpacer ' :
109+ buffer.write ('GlimpseSpacer (' );
110+ if (glimpseWidget .flex != null ) buffer.write ('flex: ${glimpseWidget .flex },' );
111111 buffer.write (')' );
112112 break ;
113- case 'SduiSizedBox ' :
114- buffer.write ('SduiSizedBox (' );
115- if (sduiWidget .width != null ) buffer.write ('width: ${sduiWidget .width },' );
116- if (sduiWidget .height != null ) buffer.write ('height: ${sduiWidget .height },' );
117- if (sduiWidget .child != null ) buffer.write ('child: ${_generateSduiWidgetCode ( sduiWidget .child , indent + 1 )},' );
113+ case 'GlimpseSizedBox ' :
114+ buffer.write ('GlimpseSizedBox (' );
115+ if (glimpseWidget .width != null ) buffer.write ('width: ${glimpseWidget .width },' );
116+ if (glimpseWidget .height != null ) buffer.write ('height: ${glimpseWidget .height },' );
117+ if (glimpseWidget .child != null ) buffer.write ('child: ${_generateGlimpseWidgetCode ( glimpseWidget .child , indent + 1 )},' );
118118 buffer.write (')' );
119119 break ;
120- case 'SduiAppBar ' :
121- buffer.write ('SduiAppBar (' );
122- if (sduiWidget .title != null ) buffer.write ("title: '${sduiWidget .title }'," );
123- if (sduiWidget .backgroundColor != null ) buffer.write ('backgroundColor: Color(${sduiWidget .backgroundColor .value }),' );
124- if (sduiWidget .foregroundColor != null ) buffer.write ('foregroundColor: Color(${sduiWidget .foregroundColor .value }),' );
125- if (sduiWidget .elevation != null ) buffer.write ('elevation: ${sduiWidget .elevation },' );
126- if (sduiWidget .centerTitle != null ) buffer.write ('centerTitle: ${sduiWidget .centerTitle },' );
127- if (sduiWidget .toolbarHeight != null ) buffer.write ('toolbarHeight: ${sduiWidget .toolbarHeight },' );
128- if (sduiWidget .leadingWidth != null ) buffer.write ('leadingWidth: ${sduiWidget .leadingWidth },' );
129- if (sduiWidget .automaticallyImplyLeading != null ) buffer.write ('automaticallyImplyLeading: ${sduiWidget .automaticallyImplyLeading },' );
130- if (sduiWidget .titleSpacing != null ) buffer.write ('titleSpacing: ${sduiWidget .titleSpacing },' );
131- if (sduiWidget .toolbarOpacity != null ) buffer.write ('toolbarOpacity: ${sduiWidget .toolbarOpacity },' );
132- if (sduiWidget .bottomOpacity != null ) buffer.write ('bottomOpacity: ${sduiWidget .bottomOpacity },' );
120+ case 'GlimpseAppBar ' :
121+ buffer.write ('GlimpseAppBar (' );
122+ if (glimpseWidget .title != null ) buffer.write ("title: '${glimpseWidget .title }'," );
123+ if (glimpseWidget .backgroundColor != null ) buffer.write ('backgroundColor: Color(${glimpseWidget .backgroundColor .value }),' );
124+ if (glimpseWidget .foregroundColor != null ) buffer.write ('foregroundColor: Color(${glimpseWidget .foregroundColor .value }),' );
125+ if (glimpseWidget .elevation != null ) buffer.write ('elevation: ${glimpseWidget .elevation },' );
126+ if (glimpseWidget .centerTitle != null ) buffer.write ('centerTitle: ${glimpseWidget .centerTitle },' );
127+ if (glimpseWidget .toolbarHeight != null ) buffer.write ('toolbarHeight: ${glimpseWidget .toolbarHeight },' );
128+ if (glimpseWidget .leadingWidth != null ) buffer.write ('leadingWidth: ${glimpseWidget .leadingWidth },' );
129+ if (glimpseWidget .automaticallyImplyLeading != null ) buffer.write ('automaticallyImplyLeading: ${glimpseWidget .automaticallyImplyLeading },' );
130+ if (glimpseWidget .titleSpacing != null ) buffer.write ('titleSpacing: ${glimpseWidget .titleSpacing },' );
131+ if (glimpseWidget .toolbarOpacity != null ) buffer.write ('toolbarOpacity: ${glimpseWidget .toolbarOpacity },' );
132+ if (glimpseWidget .bottomOpacity != null ) buffer.write ('bottomOpacity: ${glimpseWidget .bottomOpacity },' );
133133 buffer.write (')' );
134134 break ;
135135 default :
0 commit comments