Indigo Rose Software
Indigo Rose Software
Log in to the Customer Portal Customer Login
Software Development Discussion Forums Forums
+ Reply to Thread
Page 1 of 3 1 2 3 LastLast
Results 1 to 15 of 39
  1. #1
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652

    Object LOOP Plugin

    Hi all, I'm releasing a new plugin, this plugin allows you to
    use the AMS Object functions in a L-OOP (Lua Object Oriented Programming)
    syntax.

    Plugin Name: Object

    Description:
    Quote Originally Posted by imagine-programming.com
    This is a plugin for Autoplay Media Studio

    This plugin allows you to preform actions on the AMS objects in a more
    pure-lua and object oriented form. The plugin contains all AMS functions for
    object ins OOP form. A few extra functions are added, these are
    only listed in the helpfile, because the Action Dialog displays the functions
    incorrectly. Only Object:Create is listed in the Action dialog.

    Make sure to read the helpfile about the extra functions and their usage,
    the usage for all native functions can be found in the AMS helpfile, for that
    object.
    Additional Information:
    Quote Originally Posted by imagine-programming.com
    The extra functions are not the only extra functions
    future versions of this plugin may contain a quite expanded
    list of extra functions. If you wish to suggest a function, mail
    to Imagine Programming using the contact form. Make sure, when
    you want to suggest a function, to suffix the message with:
    Suggestion for Imagine Object Plugin.

    You could also reply to this thread.
    Credits:
    Centauri Soldier, for reminding me to check if an object exists!

    Extra information, download link and full function list:
    Imagine Object Plugin


    I must say, it was a load of work lol! 220 functions...

    Please report bugs and suggestions, thanks!


    *Edit, lol I just noticed 1990 lines of code went into this project, how ironic, that's my birthyear!
    Last edited by Imagine Programming; 03-06-2010 at 11:44 PM.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  2. #2
    Join Date
    Jun 2007
    Location
    Delphi II
    Posts
    1,347
    Man, that's a lot of functions! I'm gonna be in that help file for a few hours I guess. Well, I've been looking forward to trying this out since you first mentioned it. I can't wait to see what it can do. Thanks for sharing with the rest of us, IP.
    Last edited by Centauri Soldier; 03-07-2010 at 12:29 AM.
    Action Plugins
    AllOn | Box | Class | Cursor | DXML | Error | Frames | GlobalPaths | Goto | Group | INIPlus | KeyLock | MathEx | Menu | Project | Resize | StatusBar
    Download

  3. #3
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Quote Originally Posted by Centauri Soldier View Post
    Man, that's a lot of functions! I'm gonna be in that help file for a few hours I guess. Well, I've been looking forward to trying this out since you first mentioned it. I can't wait to see what it can do. Thanks for sharing with the rest of us, IP.
    No problem mate! I intended to to this ages ago but stuff kept getting between me and this I finally started and finished it!

    By the way, the helpfile only tells you about none-AMS functions, if you need help for a certain AMS object function, use the AMS helpfile

    One function is not documented in the helpfile, Object:RestoreOriginalRect, this function restores the size and position of the object which is the size and position the object had from the moment you created the Object handle

    Got any suggestions for functions? I'll work FadeOut, FadeIn in for the Imageobject later.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  4. #4
    Join Date
    Oct 2009
    Posts
    541
    It's about time people started releasing free plugins again, and it's also about time people started using Object Orientated Programming in Lua!

    Nice.

    EDIT: Just looked over this and, wow. These append functions and ToggleEnabled/ToggleVisible are great.
    Last edited by Sakuya; 03-07-2010 at 02:01 AM.

  5. #5
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Quote Originally Posted by Sakuya View Post
    It's about time people started releasing free plugins again, and it's also about time people started using Object Orientated Programming in Lua!

    Nice.

    EDIT: Just looked over this and, wow. These append functions and ToggleEnabled/ToggleVisible are great.
    Thank you, yes indeed, I'd love to see more L-OOP over here, that's why I will release the plugin's source eventually. First I want to see how popular L-OOP is on these forums, and I want to update the plugin a couple of times to add new functions.

    I should add a note about Object:Append, it does work on the RichText object,
    but only without formatting. So, when you use Object:Append on the RichText, formatting will be ignored.

    Object:SetText and Object:GetText do work with formatting for RichText, same as RichText.Set/GetText.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  6. #6
    Join Date
    Oct 2009
    Posts
    541
    Quote Originally Posted by Imagine Programming View Post
    Thank you, yes indeed, I'd love to see more L-OOP over here, that's why I will release the plugin's source eventually. First I want to see how popular L-OOP is on these forums, and I want to update the plugin a couple of times to add new functions.

    I should add a note about Object:Append, it does work on the RichText object,
    but only without formatting. So, when you use Object:Append on the RichText, formatting will be ignored.

    Object:SetText and Object:GetText do work with formatting for RichText, same as RichText.Set/GetText.
    Now we only need stuff like this..

    Code:
    local Image1 = Object:Create("Image1");
    
    Image1.ImageFile = _SourceFolder.."\\Images\\Background.png";
    Image1.Opacity = 50;
    Image1.TooltipText = "Your background.";
    Image1.Visible = true;
    Image1.Enabled = false;
    
    -- maybe because lua can't detect these changes straight away..
    Image1:SaveChanges();
    Then AutoPlay Media Studio can take over the world!

  7. #7
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Quote Originally Posted by Sakuya View Post
    Now we only need stuff like this..

    Code:
    local Image1 = Object:Create("Image1");
    
    Image1.ImageFile = _SourceFolder.."\\Images\\Background.png";
    Image1.Opacity = 50;
    Image1.TooltipText = "Your background.";
    Image1.Visible = true;
    Image1.Enabled = false;
    
    -- maybe because lua can't detect these changes straight away..
    Image1:SaveChanges();
    Then AutoPlay Media Studio can take over the world!
    That's actually possible, try:
    Code:
    tImage1 = {};
    tImage1.ImageFile = _SourceFolder.."\\Images\\Background.png";
    tImage1.Opacity = 50;
    tImage1.TooltipText = "Your background.";
    tImage1.Visible = true;
    tImage1.Enabled = false;
    
    Image1 = Object:Create("Image1", tImage1, OBJECT_IMAGE);
    And don't forget about Object:SetProperties ^^

    But I'll probably be able to work that in somehow, perhaps using a subtable
    like:
    Code:
    local Image1 = Object:Create("Image1");
    
    Image1.PropsOnTheFly.ImageFile = _SourceFolder.."\\Images\\Background.png";
    Image1.PropsOnTheFly.Opacity = 50;
    Image1.PropsOnTheFly.TooltipText = "Your background.";
    Image1.PropsOnTheFly.Visible = true;
    Image1.PropsOnTheFly.Enabled = false;
    
    Image1:SaveChanges();
    and here comes the interesting part, I could even set the subtable's index to a function that automatically updates the properties when the table is modified! But that'll require some work though, rather much I'm affraid.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  8. #8
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Support for Grid.GetCellState (thanks riz) added and helpfile updated.
    See first post for link.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  9. #9
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    34 Downloads and 148 views, so, tell me what you think about L-OOP programming, wishes for future AMS plugins in L-OOP and something about this plugin...
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  10. #10
    Join Date
    May 2006
    Posts
    4,355
    wishes for future AMS plugins in L-OOP
    i want a plugin that freezes time so i can get some D.A.M work done

    i havent looked at this yet, i will do tho, just when i find time, im trying to get my plugins back out there but things keep happening, phone rings, door knocks, kids cry, misses talks!!, just cant get any peace!! and cant concentrate with no NICOTINE AGRRRRRR

    (iv done 2 packets of gum today.....my jaw hurts, but im smoke free lol)

  11. #11
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Quote Originally Posted by RizlaUK View Post
    i want a plugin that freezes time so i can get some D.A.M work done

    i havent looked at this yet, i will do tho, just when i find time, im trying to get my plugins back out there but things keep happening, phone rings, door knocks, kids cry, misses talks!!, just cant get any peace!! and cant concentrate with no NICOTINE AGRRRRRR

    (iv done 2 packets of gum today.....my jaw hurts, but im smoke free lol)
    Code:
        local RizlaUK = NewPersonHandler("D.H.");
        local hTime   = TimeHandler();
        hTime:Freeze();
        while(RizlaUK:Busy())do
            hTime:EnsureFrozen();
            RizlaUK:GetWorkDone(WORK_PLENTY);
        end
    hehe

    Wow, kudos for not smoking mate! I envy that mental strength XD
    Well, get some work done! No hehe just kidding, can you even concentrate with kids around you?
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  12. #12
    Join Date
    May 2006
    Posts
    4,355
    can you even concentrate with kids around you?
    NO, why you think my plugins have so many bugs

    lol, its the not smoking is why i cant concentrate, if i had a ciggy id be ok, but, im not giving in now, i'll just have to get used to it!!

    Does this feeling ever go away, anxiety i think, but cant work out why!!

  13. #13
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Quote Originally Posted by RizlaUK View Post
    NO, why you think my plugins have so many bugs

    lol, its the not smoking is why i cant concentrate, if i had a ciggy id be ok, but, im not giving in now, i'll just have to get used to it!!

    Does this feeling ever go away, anxiety i think, but cant work out why!!
    It will go away, eventually it'll all turn into frustration on a level you would love to pull off your nails, and pull out your hair (as described by a few)... But then, when you make it through those stages, you won't ever need a cigarette again ^^

    I don't think this was a motivational message, but it should have been
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  14. #14
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    UPDATE

    As in, information about the next update.

    As Sakuya suggested, in the next version there will be a On the fly properties
    modification system. After hours of research and coding, I have put together
    a system in this plugin, where SetProperties could be discarded!

    Code sample, tested and it works:
    Code:
    Input1 = Object:Create("Input1"); -- this object is already existing on current page/dialog
    Input1.Props.Width = 200;
    Input1.Props.Text   = "New text, this actually works!";
    Input1.Props.Height = 22;
    That's it, you can edit seperate keys in the properties table just like that!
    These changes will be affected right from the moment lua parses that line!

    Still some testing is required, but an update will be posted on the 9th,
    thanks sakuya for suggesting this!
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

  15. #15
    Join Date
    Apr 2007
    Location
    Raalte, OV, Netherlands
    Posts
    2,652
    Update Online!
    version 1.1, 223 functions!

    Sooner as expected, but the update is online!

    This system is fully working, and please do know this is only for setting
    some properties. Obtaining properties is possible, but they may differ after a
    function call to SetProperties.
    See previous post what this new system can do.

    Also 2 functions were added:
    • Object:FadeIn(MaxOpacity,Timeout=10) -- Fades in an imageobject
    • Object:FadeOut(MinOpacity, Timeout=10) -- Fades out an imageobject

    Downloadlinks updated. See first post for links. An updated example is included!

    __________________
    Bas,
    Imagine Programming
    iEnc Action Plugin
    Object Action Plugin
    Last edited by Imagine Programming; 03-08-2010 at 09:26 PM.
    Code:
    Debug (((($2A<<8)!$FF04A0B)!$FF04A0B)>>8)
    ;> 42.
    If I & AMS <3 : Debug "Who doesn't love AMS?!" : EndIf ; You may guess the output.
    Bas Groothedde
    Imagine Programming :: Join my Forum Group for plugin news and updates.

    My AMS Plugins:
    Unofficial AMS IRC Channel

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
Indigo Rose Software