[Gambas-user] Gambas 3 IDE features request
Fabián Flores Vadell
fabianfloresvadell at ...626...
Sat Dec 18 15:41:42 CET 2010
2010/12/17 Fabián Flores Vadell <fabianfloresvadell at ...626...>:
> Hi. There are two features I beleave could be fine in Gambas 3 IDE:
>
> 1. Add an option named "create getters and setters" (or similar) to
> the context menu in the code editor, so the IDE can take care of this
> boring work. A simple comment can define attributes than will have
> accessor and modifiers, like that:
>
> 'cgs is for create getter and setter
> PRIVATE Name AS String 'cgs
I think that a method like this could do the job (I eliminated the "c"
for "create"):
Public Function makeGettersANDSetters(code As String) As String
Dim acode As String[]
Dim linecode, attribName, setter, getter, gettersAndsetters As String
Dim set, get As Boolean
Dim posPrivate, posComment, posAttribName As Integer
acode = Split(code, "\n", "", True)
For Each linecode In acode
linecode = UCase(linecode)
posPrivate = InStr(linecode, "PRIVATE")
If posPrivate <> 0 Then
posComment = InStr(linecode, "'")
If posComment <> 0 Then
set = InStr(linecode, "S", posComment + 1) > 0
get = InStr(linecode, "G", posComment + 1) > 0
posAttribName = posPrivate + Len("PRIVATE") + 1
If get Or If set Then
attribName = Mid(linecode, posAttribName, InStr(linecode, "
", posPrivate + Len("PRIVATE") + 1) - posAttribName)
attribName = UCase(Left(attribName)) &
LCase(Right(attribName, Len(attribName) - 1))
Endif
If set Then
setter = "\n\n" & "PUBLIC SUB set" & attribName & "(Value AS
type)" & "\n\n\n" & "END"
gettersAndsetters &= setter
setter = ""
set = False
Endif
If get Then
getter = "\n\n" & "PUBLIC FUNCTION get" & attribName &
"(Value AS type) AS Type" & "\n\n\n" & "END"
gettersAndsetters &= getter
getter = ""
get = False
Endif
attribName = ""
Endif
Endif
Next
Return gettersAndsetters
End
--
Fabián Flores Vadell
www.comoprogramarcongambas.blogspot.com
www.speedbooksargentina.blogspot.com
More information about the User
mailing list