sancarn / Extended_MapBasic

This is an Open Source project. We are developing a powerful extension for the MapBasic Window in Pitney Bowes' MapInfo. The extension will give users the ability to compile on demand from the MapBasic Window. Further extensions may include custom MapBasic functions to accomplish common tasks. This project is still very much WIP
MIT License
1 stars 0 forks source link

[IDEA] clsProgressBar #9

Open sancarn opened 8 years ago

sancarn commented 8 years ago

EMB - Progress Bar:

Option 1 - Transpile to Native MapBasic

    Sub doTheStuff()
        Dim pb as New clsProgressBar    'This is a Extended MapBasic call to create a new progress bar
        pb.Title "Doing the stuff!"     'Set the Progress bar text.
        pb.Range = 5                    'Set the number of stages of the progress bar.
        pb.Show
            'do stuff
            pb.progress = pb.progress + 1
            'do more stuff
            pb.progress = pb.progress + 1
            'do more stuff
            pb.progress = pb.progress + 1
            'do more stuff
            pb.progress = pb.progress + 1
            'do more stuff
            pb.progress = pb.progress + 1
            'do more stuff
        pb.Hide
    End Sub

Transpiles to:

    Dim mnProgress1 as integer

    Sub doTheStuff()
        ProgressBar "Doing the stuff!" Calling doProgressBar(1) Range 5
    End Sub

    sub doProgressBar(i)
        Do Case i
            Case 1
                mnProgress1 = mnProgress1 + 1
                Do case mnProgress
                    Case 1
                        'doStuff
                    Case 2
                        'do more stuff
                    Case 3
                        'do more stuff
                    Case 4
                        'do more stuff
                    Case 5
                        'do more stuff
                End Case

                If mnProgress = 5
                    ProgressBar = -1
                Else
                    ProgressBar = mnProgress1
                End If

            'More cases...
        End Case
    End Sub

Option 2 - Custom dialog

No example yet...

Option 3 - External .NET Dialog

No example yet...