Phase 4: Steuerelemente implementieren
This commit is contained in:
@@ -369,6 +369,13 @@ pub enum Builtin {
|
||||
IsamSavepoint,
|
||||
IsamSetmem,
|
||||
IsamBof,
|
||||
MsgBox,
|
||||
InputBoxS,
|
||||
ClipboardAdd,
|
||||
ClipboardGet,
|
||||
GraphicsLine,
|
||||
GraphicsPaint,
|
||||
GraphicsView,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
@@ -386,6 +393,20 @@ pub enum HExpr {
|
||||
property: u16,
|
||||
ty: HTy,
|
||||
},
|
||||
ObjectIndexedProperty {
|
||||
object: u16,
|
||||
object_index: Option<Box<HExpr>>,
|
||||
property: u16,
|
||||
index: Box<HExpr>,
|
||||
ty: HTy,
|
||||
},
|
||||
ObjectMethodCall {
|
||||
object: u16,
|
||||
index: Option<Box<HExpr>>,
|
||||
method: u16,
|
||||
args: Vec<HExpr>,
|
||||
ty: HTy,
|
||||
},
|
||||
DynamicObjectProperty {
|
||||
object: Box<HExpr>,
|
||||
property: String,
|
||||
@@ -511,6 +532,13 @@ pub enum HStmtKind {
|
||||
property: u16,
|
||||
value: HExpr,
|
||||
},
|
||||
SetObjectIndexedProperty {
|
||||
object: u16,
|
||||
object_index: Option<HExpr>,
|
||||
property: u16,
|
||||
index: HExpr,
|
||||
value: HExpr,
|
||||
},
|
||||
SetDynamicObjectProperty {
|
||||
object: HExpr,
|
||||
property: String,
|
||||
@@ -518,6 +546,7 @@ pub enum HStmtKind {
|
||||
},
|
||||
ObjectMethod {
|
||||
object: u16,
|
||||
index: Option<HExpr>,
|
||||
method: u16,
|
||||
args: Vec<HExpr>,
|
||||
},
|
||||
@@ -592,6 +621,10 @@ pub enum HStmtKind {
|
||||
targets: Vec<LabelId>,
|
||||
},
|
||||
ReturnGosub(Option<LabelId>),
|
||||
Run {
|
||||
target: Option<HExpr>,
|
||||
string: bool,
|
||||
},
|
||||
/// Ereignis-Trap erklären (Sprachreferenz §8). `art` ist die Quelle
|
||||
/// (0 KEY, 1 TIMER, 2 UEVENT, 3 SIGNAL), `index` ihre Kennung bzw. bei
|
||||
/// `TIMER` das Intervall in Sekunden. `ziel = None` = `GOSUB 0`.
|
||||
|
||||
Reference in New Issue
Block a user