Dev-Object

Applications, Games, Tools, User libs and useful stuff coded in PureBasic
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.0 is available for download, see the first post for download link.

What's new in the version ?
  • Help file loading optimization
  • A "Paste" PopupMenu added for the "Class Members" editor
  • "Cut", "Copy", "Paste", "Undo", "Redo" and "SelectAll" instructions added in GoScintilla Module
Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.1 is available for download, see the first post for download link.

What's new in the version ?
  • Minor correction in the save source code function
  • A Merge list instruction added for Linked list
Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

I'm so busy with my 3D game project that I forget to upload the version 1.6.2. The version 1.6.2 is available for download, see the first post for download link.

What's new in the version ?
  • Minors corrections in the French Translations of the comments about Static Array instructions and minor correction in the Code generator.
Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.3 is available for download, see the first post for download link.

What's new in the version ?
  • Modification of the file filter for the files that can be analyzed by the "Sanity Checker". Now PB source code (*.pb) or PB Include (*.pbi) can be analyzed.
  • Modification of the file filter for the save source code functionality it can save PB source code (*.pb) or PB Include (*.pbi).
  • Added the possibility to choose a license under which the generated source code will be released. (Optional)
For the moment you can choose between Apache License, MIT License or the zlib/libpng License. You can add more license by placing the text (*.txt) files describing them inside the "licenses" folder.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.4 is available for download, see the first post for download link.

What's new in the version ?
  • Minor bug correction in the LicenseManager constructor.
Sorry for the inconvenience, I didn't test properly the new feature I have added. :(

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
Mr.L
Enthusiast
Enthusiast
Posts: 104
Joined: Sun Oct 09, 2011 7:39 am

Re: Dev-Object

Post by Mr.L »

Hello, StarBootics,
maybe I'm doing something wrong, but something is not working here...

I checked only the "Setters" in the Basic Methods, then generated the code for this two lines

Code: Select all

Value1.l
Value2.l
This is a part of the generated code

Code: Select all

[...]
DeclareModule Test
  
  Interface Test
    
    SetValue1(*P_Value1.i
)
    SetValue2(P_Value2.s)
    ReadPrefs(P_GroupName.s)
    WritePrefs(P_GroupName.s)
    CreatePrefs(FileName.s)
    OpenPrefs(FileName.s)
    Free()
    
  EndInterface
  
  ; Declare Free(*This)
  Declare.i New(*P_Value1.i
 = #Null, P_Value2.s = "")
  
EndDeclareModule

Module Test
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< Structure declaration <<<<<


  Structure Private_Members
    
    VirtualTable.i
    Value1.i
    Value2.s
    
  EndStructure
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< The mutators <<<<<

  Procedure SetValue1(*This.Private_Members, *P_Value1.i
)
    
    If *This\Value1 <> #Null
      *This\Value1\Free()
    EndIf
    
    *This\Value1 = *P_Value1
    
  EndProcedure
[...]
as you can see, the closeing brackets of "Value1" are placed in a new line,
also the code would give an error in PureBasic, because native types can't be used with pointers (*P_Value1.i is not allowed).
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

You are right Mr.L something is completely wrong under windows. I make a lot of testing under Linux and very little under windows.

Don't worry I'm on it because the code should have looked like this :

Code: Select all

DeclareModule Test
  
  Interface Test
    
    SetValue1(P_Value1.l)
    SetValue2(P_Value2.l)
    Free()
    
  EndInterface
  
  ; Declare Free(*This)
  Declare.i New(P_Value1.l = 0, P_Value2.l = 0)
  
EndDeclareModule

Module Test
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< Structure declaration <<<<<

  Structure Private_Members
    
    VirtualTable.i
    Value1.l
    Value2.l
    
  EndStructure
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< The mutators <<<<<

  Procedure SetValue1(*This.Private_Members, P_Value1.l)
    
    *This\Value1 = P_Value1
    
  EndProcedure
  
  Procedure SetValue2(*This.Private_Members, P_Value2.l)
    
    *This\Value2 = P_Value2
    
  EndProcedure
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< The Destructor <<<<<

  Procedure Free(*This.Private_Members)
    
    FreeStructure(*This)
    
  EndProcedure
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< The Constructor <<<<<

  Procedure.i New(P_Value1.l = 0, P_Value2.l = 0)
    
    *This.Private_Members = AllocateStructure(Private_Members)
    *This\VirtualTable = ?START_METHODS
    
    *This\Value1 = P_Value1
    *This\Value2 = P_Value2
    
    ProcedureReturn *This
  EndProcedure
  
  ; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  ; <<<<< The Virtual Table Entries <<<<<

  DataSection
    START_METHODS:
    Data.i @SetValue1()
    Data.i @SetValue2()
    Data.i @Free()
    END_METHODS:
  EndDataSection
  
EndModule
Thanks for reporting.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.5 is available for download, see the first post for download link.

What's new in the version ?
  • A double bugs corrections the most important one was inside the GoScintilla::InsertLineOfText()
Sorry for the inconvenience.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

Another update :? , the version 1.6.6 is available for download, see the first post for download link.

What's new in the version ?
  • Major correction about the Options Editor. Affected instructions :
    • CloseOptionsEditors()
    • AskNewFont()
    • AskNewColors()
Sorry for the inconvenience.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.7 is available for download, see the first post for download link.

What's new in the version ?
  • Minor Correction about the Options Editor.
  • Minor correction inside the ReadPrefs instruction for the Maps
  • Minor correction in the Setters for the string type with $ symbol
  • Minor correction in the Update for the string type with $ symbol
  • Input/Output on a custom preferences file system. See this topic : viewtopic.php?f=12&t=78235
By the way this will probably be the last update for 2021.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

You release something that you think is ready but it is not... The version 1.6.8 is available for download, see the first post for download link.

What's new in the version ?
  • Regular Expression simplifications
    • GarbageCollector
    • MemberNameAnalyser
    • Dev-Object -> MyLineStyler()
  • Deep review of the code generator
    • "P_" prefix removal
    • Improvement of the BuiltPrefsKey() instruction for the Dynamic Array
    • Corrections in the Add/Extract as well as Refresh group for the Custom Preferences
  • Minor correction in the "LicenseManager" constructor -> FinishDirectory() was missing.
Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.6.9 is available for download, see the first post for download link.

What's new in the version ?
  • Generalized fixes to adapt the code to PB V6.00 C Backend + Optimization
  • custom libs updated
  • Addition of the choice of the type (.l, .i or .q) to be used for the sizes and indexes of Dynamic Arrays, size and index of Linked Lists and size of Maps. Affected methods for Dynamic Arrays, Maps and Linked Lists :
    • Getters and Setters (Arrays)
    • Linear search (Arrays and linked list)
    • Binary search (Arrays and linked list)
    • ReDim (Arrays)
    • Size (Array, Maps and Linked List)
    • Select Element (Linked List)
    • Index (Linked List)
  • Correction in the following methods :
    • Reset (Arrays)
    • Clear (Arrays)
    • Copy (Arrays)
    • Compare (Arrays)
  • Correction for file I/O :
    • Preferences (Array, Maps and Linked List)
    • XML (Array, Maps and Linked List)
    • Binary (Array, Maps and Linked List)
    • Encoded/Crypted (Array, Maps and Linked List)
    • Custom Preferences (Array, Maps and Linked List)
  • Improvement of the Sanity Checker
The code has been tested under Linux only for now. Seems to work fine when compiled with PB V6.00 Beta 1 C Backend + Optimization
But keep in mind that PB V6.00 is still a beta version.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
ShadowStorm
Enthusiast
Enthusiast
Posts: 237
Joined: Tue Feb 14, 2017 12:07 pm

Re: Dev-Object

Post by ShadowStorm »

Good evening, who can tell me what this module is for please?
What's the interest ?
I am French, I do not speak English.
My apologies for the mistakes.

I have sometimes problems of expression
I am sometimes quite clumsy, please excuse me and let me know.
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

Since not every body can see the images I have linked in the first post, I took the time to create and upload a very simple tutorial about how to use Dev-Object to generate the source code for a RecentFiles object. There is the link : http://gsaumure.x10host.com/en_dev_object_tutorial.html

I also put the link in the First post.

Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
User avatar
StarBootics
Addict
Addict
Posts: 984
Joined: Sun Jul 07, 2013 11:35 am
Location: Canada

Re: Dev-Object

Post by StarBootics »

Hello everyone,

The version 1.7.0 is available for download, see the first post for download link.

What's new in the version ?
  • Improvement of the Integrity Checker
  • FoolProofing the Entries of the code generator (Still experimental)
  • Bug correction in the License selector
Best regards
StarBootics
The Stone Age did not end due to a shortage of stones !
Post Reply