I've updated the repository to include a fix from Dennis and some SpinSuggest icon changes. The new icons (attached) are stylized more like the toolbar icons and keep colors consistent with PropellerTool sections which we will have in this program some day.
I've updated the repository to include a fix from Dennis and some SpinSuggest icon changes. The new icons (attached) are stylized more like the toolbar icons and keep colors consistent with PropellerTool sections which we will have in this program some day.
Having all those shapes the same and only differ in color may be an issue for those with color vision issues.
Having all those shapes the same and only differ in color may be an issue for those with color vision issues.
C.W.
That's why my example kept the basic shapes, but added the lock-key for PRI and some of the other "feature-ettes" to help distinguish the icons form one another.
Having all those shapes the same and only differ in color may be an issue for those with color vision issues.
C.W.
Hmm. Ya, I guess you're right. I wonder how the propeller tool background shading looks to people with such issues.
The Icons are much cleaner without little artsy pieces. Adding words to the icons won't help because they are so small when rendered (if anyone has noticed ???). Will look into adding some text bys some means to make it clear (tool tip/list feature).
If you could decide on letters to distinguish pub and pri you could use colored letters to provide color clues and be ADA friendly.
Is a capital P different enough from a lower case p in a simple font?
I messed with using (OBJ), (CON), etc... in the symbol names. That's more trouble than it's worth.
At this point, I think if we can stick with the color scheme and have some very simple little decorations things would be fine.
It's hard to tell how anything will look without running the program though.
Rick, I don't recommend a fifth of Nyquil
BTW, I found several OBEX programs that ignore case when adding objects. If something isn't showing up in the method list, then the case issues are likely causing the problem. Works great on Windows of course, but that ain't the only platform.
SPIN_AUTOCOMPLETE works like this:- Press dot (.) in any non-comment area of the source to show OBJ, CON, PUB, PRI, VAR, and DAT references.- Press escape to not add any item listed.- Press dot (.) to add a dot.- Scroll to the item you want and press enter to add that item. Tab to select is not available at the moment. Later, "tab" may be used instead of enter if the cbAuto is a sub-class of QComboBox.
RE:
- Press dot (.) to add a dot. <== currently does nothing (I assume you mean that typing the dot key while the 'dot' pop-up menu its is selected?)
And, not sure if a carriage-return or line-feed should be added after the pop-up menu item is entered. Seems that the cursor going to the next line may not be helpful. In most cases, won't the user want to edit within the same line as they started.
Example:
User types '.', gets the pop-up menu of auto-choices
User arrows down to a VAR or CON item: (i.e. "someVar")
User types an Enter key
"someVar" is inserted with the cursor placed just after it...
User expects to type something like: " := 123" to complete that line of code
And, not sure if a carriage-return or line-feed should be added after the pop-up menu item is entered. Seems that the cursor going to the next line may not be helpful. In most cases, won't the user want to edit within the same line as they started.
PropTool lets you modify the colors. You can change everything color-wise, including doing more color syntax highlighting than is apparent by default.
Having the icons be color based might be an issue, unless we can tint them based on user chosen colors, since we should allow uses to set the block section colors (just like proptool does), especially for accomadating colorblind folks.
Maybe if the icons were simple symbols, and the color was applied as either a tint of the icon or as a background behind the icon?
I've updated the repository to include a fix from Dennis and some SpinSuggest icon changes. The new icons (attached) are stylized more like the toolbar icons and keep colors consistent with PropellerTool sections which we will have in this program some day.
How about just using these simple shapes / colors as you have shown and for those that are "color challenged" just put a 3 letter label in each icon. OBJ, VAR, CON, PUB, PRI, DAT and so on. Then you really don't need to know what the shape or color means.
How about just using these simple shapes / colors as you have shown and for those that are "color challenged" just put a 3 letter label in each icon. OBJ, VAR, CON, PUB, PRI, DAT and so on. Then you really don't need to know what the shape or color means.
Just my .02...
Hi Don.
Unfortunately, the icon rendering is too small for this method to be effective.
Thanks for your input. I hope what we end up doing will work for you.
If for example, your top level file tab has focus and is the only file open, when you go to the lower left panel and click on an object file, it will open that file up in a new tab and give that tab focus. Cool! Works as expected.
If you go back to your main tab and then click on the same object you just opened, it opens it again in another tab and gives that new tab focus. What?
If you do the same thing, go back to main tab, click on an object in the lower left window, it opens ANOTHER tab with ANOTHER copy of that object and gives it focus.
In a short time, you can have many tabs open for the same object.
Shouldn't proper behavior be to just switch focus to the correct tab if the object file is already open in a tab?
The top left window behaves inthe same manner when you click on files.
I'll let you know if i'm still awake at 4am! It's just past midnight. I'm an old man now so I nap and get up in the middle of the night more than I used to! Talk about issues stacking up!
I'd offer to help track issues but I'm seriously bad at it but if you want a helper you can fire, let me know.
I was actually up and going to play with P2 code but my cat kept walking on my keyboard and really messing up my PASM code!
why not having a real front end and backend for this compiler ...
so everybody can use their favorite tool either for editing or trying new version of the compiler. A pure command line tool with input & output files ... (like gcc does depending on options) if we need to keep trace of OBJ etc ...
It will ease the maintenance of such tool IDE and compiler and ensure the multiplateforme thing (even across krosoft versions).
why not having a real front end and backend for this compiler ...
so everybody can use their favorite tool either for editing or trying new version of the compiler. A pure command line tool with input & output files ... (like gcc does depending on options) if we need to keep trace of OBJ etc ...
It will ease the maintenance of such tool IDE and compiler and ensure the multiplateforme thing (even across krosoft versions).
Thierry.
Have you tried OpenSpin? Command line, open source Spin compiler that this tool uses for the backend.
why not having a real front end and backend for this compiler ...
We do. Currently openspin is a totally separate program and project.
Nobody is suggesting that be changed.
But there are advantages to having the ability to use the compiler as a library as well. It can then provide functions to the IDE that provide a lot more information about the source code.
To start with, what about syntax highlighting?
Currently the IDE has to some how parse and analyse the source code in order to colour the syntax and background.
But that is silly, the compiler already has a lexer and parser. Whey not have the IDE use that? It would be much more robust.
What about "intelisense" or whatever you call it. The compiler can be parsing all the code, whilst you are editing, and through that library API provide all the information you need to put red squiggles under undefined symbols or help with completions. etc etc,
Then one thing could be what exist in some modelling tools an option to the command line to launch it as regular static file or librairy and provide such means to the IDE. What I feel nice today is the real multiplateform ability ... It is a key factor to work on some research industrial project with Zi propeller.
I was considering making the OpenSpin command line exe use the same DLL setup/interface. So you'd be using the same compiler backend with the IDE as with the command line exe. The only downside (if you can call it that) is that the command line tool would now be two files (exe & dll) instead of just one. Any strong opposition to that?
Having two files: openspin.exe & propellercompiler.dll (or so) that live together, side by side, it a pain?
Almost every app I have installed has an exe and some number of DLLs installed with them side by side, seems like I'm experiencing a lot of pain I wasn't aware of...
I can make it so the openspin.exe is all self contained, and have the dll be produced separately for use with the IDE (or whatever). It's a little more work to do. I just thought it might be desirable to have both things using the exact same backend setup.
Comments
In case your funny bone is broken, it was all musings.
I've updated the repository to include a fix from Dennis and some SpinSuggest icon changes. The new icons (attached) are stylized more like the toolbar icons and keep colors consistent with PropellerTool sections which we will have in this program some day.
Having all those shapes the same and only differ in color may be an issue for those with color vision issues.
C.W.
That's why my example kept the basic shapes, but added the lock-key for PRI and some of the other "feature-ettes" to help distinguish the icons form one another.
dgately
Hmm. Ya, I guess you're right. I wonder how the propeller tool background shading looks to people with such issues.
The Icons are much cleaner without little artsy pieces. Adding words to the icons won't help because they are so small when rendered (if anyone has noticed ???). Will look into adding some text bys some means to make it clear (tool tip/list feature).
Is a capital P different enough from a lower case p in a simple font?
I'm building a new Windows version now through a Nyquil fog........
At this point, I think if we can stick with the color scheme and have some very simple little decorations things would be fine.
It's hard to tell how anything will look without running the program though.
Rick, I don't recommend a fifth of Nyquil
BTW, I found several OBEX programs that ignore case when adding objects. If something isn't showing up in the method list, then the case issues are likely causing the problem. Works great on Windows of course, but that ain't the only platform.
RE:
- Press dot (.) to add a dot. <== currently does nothing (I assume you mean that typing the dot key while the 'dot' pop-up menu its is selected?)
And, not sure if a carriage-return or line-feed should be added after the pop-up menu item is entered. Seems that the cursor going to the next line may not be helpful. In most cases, won't the user want to edit within the same line as they started.
Example:
dgately
Typing dot, then selecting dot adds a dot.
This only happens on Mac No idea why.
Oh, pressing dot mean clicking on its pop-up menu item (I get it!)
Only happens on Mac. Hmm, I'll look into that. Noticed that it does NOT do that when you click on the pop-up menu item, so there's that clue.
Might need to have the auto-complete code 'swallow' the return key event. Does it get passed on?
dgately
PropTool lets you modify the colors. You can change everything color-wise, including doing more color syntax highlighting than is apparent by default.
Having the icons be color based might be an issue, unless we can tint them based on user chosen colors, since we should allow uses to set the block section colors (just like proptool does), especially for accomadating colorblind folks.
Maybe if the icons were simple symbols, and the color was applied as either a tint of the icon or as a background behind the icon?
Roy
How about just using these simple shapes / colors as you have shown and for those that are "color challenged" just put a 3 letter label in each icon. OBJ, VAR, CON, PUB, PRI, DAT and so on. Then you really don't need to know what the shape or color means.
Just my .02...
As in this example you could delete the padlock and just put PRI instead or you could make padlock smaller and put PRI next to it in on the icon...
Hi Don.
Unfortunately, the icon rendering is too small for this method to be effective.
Thanks for your input. I hope what we end up doing will work for you.
If for example, your top level file tab has focus and is the only file open, when you go to the lower left panel and click on an object file, it will open that file up in a new tab and give that tab focus. Cool! Works as expected.
If you go back to your main tab and then click on the same object you just opened, it opens it again in another tab and gives that new tab focus. What?
If you do the same thing, go back to main tab, click on an object in the lower left window, it opens ANOTHER tab with ANOTHER copy of that object and gives it focus.
In a short time, you can have many tabs open for the same object.
Shouldn't proper behavior be to just switch focus to the correct tab if the object file is already open in a tab?
The top left window behaves inthe same manner when you click on files.
Last pull of source around 4pmET.
This has been observed on Windows and Mac.
The doctor's gonna kill you ... oh wait, that would be crazy.
"But you got what you asked for." LOL
Rick, I noticed that once also but forgot to take a note.
Here's another one for ya.
The current terminal doesn't send $d for "Enter" ....
Also, I've found that some older versions of openspin just don't work in some limited cases. Please make sure to use a recent build.
There are some issues stacking up, but they aren't really being recorded yet. Maybe it's time.
I'd offer to help track issues but I'm seriously bad at it but if you want a helper you can fire, let me know.
I was actually up and going to play with P2 code but my cat kept walking on my keyboard and really messing up my PASM code!
Hmm, guess I'm asleep at the wheel. Qwerty forehead and all .....
I was obliquely referring to the "issue tracker" - it's "Virgin Atlantic" right now.
I'll start porting the terminal stuff tomorrow.
The most visible is probably the duplicate tab file problem Rick mentions.
Another issue was that the file browser did not work for some spin files.
Dennis sent me a "block shift" fix, but I haven't included that yet.
Edit: Fix is now in the repository. Thanks Dennis!
I would like to get the files in the lib directory to be read only, so I do not change them unawares.
why not having a real front end and backend for this compiler ...
so everybody can use their favorite tool either for editing or trying new version of the compiler. A pure command line tool with input & output files ... (like gcc does depending on options) if we need to keep trace of OBJ etc ...
It will ease the maintenance of such tool IDE and compiler and ensure the multiplateforme thing (even across krosoft versions).
Thierry.
Have you tried OpenSpin? Command line, open source Spin compiler that this tool uses for the backend.
Nobody is suggesting that be changed.
But there are advantages to having the ability to use the compiler as a library as well. It can then provide functions to the IDE that provide a lot more information about the source code.
To start with, what about syntax highlighting?
Currently the IDE has to some how parse and analyse the source code in order to colour the syntax and background.
But that is silly, the compiler already has a lexer and parser. Whey not have the IDE use that? It would be much more robust.
What about "intelisense" or whatever you call it. The compiler can be parsing all the code, whilst you are editing, and through that library API provide all the information you need to put red squiggles under undefined symbols or help with completions. etc etc,
Then one thing could be what exist in some modelling tools an option to the command line to launch it as regular static file or librairy and provide such means to the IDE. What I feel nice today is the real multiplateform ability ... It is a key factor to work on some research industrial project with Zi propeller.
T.
I was considering making the OpenSpin command line exe use the same DLL setup/interface. So you'd be using the same compiler backend with the IDE as with the command line exe. The only downside (if you can call it that) is that the command line tool would now be two files (exe & dll) instead of just one. Any strong opposition to that?
Can you generate a .dll as a build option?
Almost every app I have installed has an exe and some number of DLLs installed with them side by side, seems like I'm experiencing a lot of pain I wasn't aware of...
I can make it so the openspin.exe is all self contained, and have the dll be produced separately for use with the IDE (or whatever). It's a little more work to do. I just thought it might be desirable to have both things using the exact same backend setup.