Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

[module] SpreadSheet 0.0.2.1 - 3


  • Please log in to reply
32 replies to this topic
majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
Spreadsheet control


Download          Documentation         

Posted Image


Notes:

[*:1ou6me2r] SS doesn't support Unicode by design and that will probably never change. Its open-source however.

[*:1ou6me2r] In order to use OVERDRAW types without dealing with structure details too much, use the S function. and include DRAWITEMSTRUCT definition given at the start of the _Test.ahk.

[*:1ou6me2r] For real life sample of usage, check out Property control.

[*:1ou6me2r]Notes about cell unlocking/unhiding.

[*:1ou6me2r]True ComboBox with ComboX
Posted Image

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
Version 0.1

Practicaly everything is possible to set with SetCell function
Posted Image

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
No interest/comments for this control...

Project is abandoned then :idea:
Posted Image

John W
  • Members
  • 172 posts
  • Last active: Mar 07 2009 05:40 PM
  • Joined: 09 Apr 2007
Just saw it, seem´s interesting...
COMPLETELY INACTIVE - I do not use AHK anymore.

ckohrman
  • Members
  • 70 posts
  • Last active: Apr 12 2013 12:47 AM
  • Joined: 06 Mar 2007
I also think it's very interesting, and I immediately started thinking of possible uses... just curious, what are you planning to do with this? :)

SKAN
  • Administrators
  • 9115 posts
  • Last active:
  • Joined: 26 Dec 2005
Awesome control!

No interest/comments for this control...
Project is abandoned then :idea:


Uh! Please.. The forum is unable to match your speed, I guess!

Thanks for all the good work!

:)

n-l-i-d
  • Guests
  • Last active:
  • Joined: --
No, do keep going. Did you manage to implement import/export yet? Looks interesting too.

Very cool if this control can be fully used in AHK! 8)

AGU
  • Guests
  • Last active:
  • Joined: --
If you can embed controls within this "spreadsheet control", this could possibly a solution for some kind of continous form I asked a long time ago.

When I wrote my ToDo List app I asked for a possibility like this. If was one of my first questions within this forum. :)
:arrow: http://www.autohotke...4758.html#14758

Can this control handle this?
______________________
Cheers AGU

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
Oh, thank you guys, you are gordgeous...

If you can embed controls within this "spreadsheet control", this
could possibly a solution for some kind of continous form I asked a long time ago.

Isnt the picture clear ? Isn't the Type clear ?

You can embed only controls available in the Types list, nothing else. So this is not general container.

Exists an GUI Element that can hold other GUI elements? It should be s.th like a endless form. Do you understand what I mean?

Of course it exists, its called Tab. You can get "endless form" if you do keep adding controls constantly ;)
Posted Image

AGU
  • Guests
  • Last active:
  • Joined: --
Well it can hold checkbox, text and button. :D

So it seems to me like a possible solution. Sorry if these next questions sound stupid, but assuming I have a checkbox in a first column, would it be possible to do some kind of action to a text control in a second column when activating/deactivating the checkbox in the first column?

And what about user-action in general. Can these embedded controls be assigned a g-label?
_____________________
Cheers AGU

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
SpreadSheat is basicly Excell. I saw in the demo it is possible to do all Excel basic things.

So, the answer is yes. You can uncheck something and influence other cells easily.

Your handler will be called on button click, state change etc, so you can do all that is necessary manualy.

So, SS is not Excell, but it can be wrapped into Excell with some higher API that relies on low level API on this page.
Posted Image

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
For instance:
SS_SetCell(hCtrl, 1, 1, "type=TEXT", "txt=Caption", "bg=0xFF", "fg=0xFFFFFF")
   SS_SetCell(hCtrl, 2, 4, "type=CHECKBOX", "data=1", "imgal=CENTER", "[color=red]sub=OnChange[/color]")


OnChange:
  SS_SetCell(hCtrl, 1, 1, "txt=Control is changed")
return

This little code creates 2 cells one to have check. WHen you check it, it will change cell AA1 (1,1).

Red code is still not implemented.
Posted Image

olfen
  • Members
  • 115 posts
  • Last active: Dec 25 2012 09:48 AM
  • Joined: 04 Jun 2005
Very impressive! I'm looking forward to using this.
Also thanks for your great work on the other custom controls!

n-l-i-d
  • Guests
  • Last active:
  • Joined: --
Just for information: Link to the original with examples

Screenshot of the SprDemo.exe

Posted Image

It can even convert a formula to graphics! And, it can save and import to spr-file. Amazing possibilities for the size.

Would be very cool if we could fully use it with AHK! :wink:

majkinetor
  • Moderators
  • 4512 posts
  • Last active: May 20 2019 07:41 AM
  • Joined: 24 May 2006
v0.2

Many new functions added - total count 29.

Acctually, almost everything is implemented but you can not access everything as I didn't find the way to interface some things yet...

The good thing is that SS can even be used for dynamic calculus as it supports Formula type for which you send CALCULATE message

Some examples from the demo code. Fairly trivial to xtend SetCell function to support this:

dtCellFloat		dt 1.2345
szCellFormula1		db '(AA6+AA7+2)*3',0
szCellFormula2		db 'Sin(Rad(45))',0
szCellGraph		db 'Grp(T(-1,0,0,Rgb(0,0,0),"Graph Demo"),X(0,PI()*4,0,1,Rgb(0,0,255),"x-axis"),Y(-1.1,1.1,0,0.5,Rgb(255,0,0),"y-axis"),gx(AJ1:AJ13,Rgb(0,0,0),"Cell values"),fx(Sin(x()),0.1,Rgb(255,0,255),"Sin(x)"),fx(x()^3-x()^2-x(),0.1,Rgb(0,128,0),"x^3-x^2-x"))',0


About fonts:

There are 16 slots for user fonts.
U create font by using SS_SetFont(hCtrl, idx, pFont)

U set the font for given cell with SetCell using fnt named parameter which u set to font index you want to use.

One other major thing is missing. SetGlobal.
This sets defaults for everything (row height, widht, colors etc..). This is currently possible to do per cell basis only.
Posted Image