ewerybody / a2 Goto Github PK
View Code? Open in Web Editor NEWAutohotkey module managing and developing framework.
License: GNU General Public License v3.0
Autohotkey module managing and developing framework.
License: GNU General Public License v3.0
so modules can have tags
It displays half checked when multiple disabled mods are selected... hmmm...
Also you cant disable or enable a selection with it.
Currently it's possible to mess up a configuration super easily. For instance when scrolling over a hotkey you change the function mode and the code is empty there. It doesn't tell you anything. This should give you a warning, keep you from pressing OK at all and at best show you what's wrong and hot to fix it.
Currently all the uppercase module names are at the top... wtf?!
this needs to be more modular anyway! make it so!
needs a list interface with user settable paths
So there are plenty of ideas to make this dialog much cooler. Actuallty I ran ahead of the least possible version already by making it a floating window with colorful validator functionality... but writing the keys of course is stupid. I'd like to:
I am going to look into this and make a suggestion.
I the place I will look into are:
when you uncheck can be disabled
it checks and disables the enabled by default
checkbox. That's correct. But when the edit page is redrawn the display is not like that!
create a step by step list of things to do and setup like downloading tools and programs one needs to contribute to the development.
test the list.
that only works when started from eclipse... probably a path problem
best from the up/down/delete menu thing
simple string window
adding and deleting from scope list
saving to module cfg
writing to hotkeys within update loop
This needs to be resolved somehow. When I code stuff on my laptop it may look super shitty on a HD monitor because of the windows ui scaling.
Probably ALL size setting need to be variable with a settable factor. pcheew. This is kinda hard to debug :D
the checkboxes can be in 2 columns I guess and the scope thing does not need to be 3 lines by default It can update on demand.
maybe the last couple entries from the commits rss:
https://github.com/ewerybody/a2/commits/master.atom
http://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2015/ENU/Maya/files/GUID-FAD0F6CC-15D0-4489-9372-028146B70F49-htm.html
so the file is updated as soon as you run the ui...
Hhmm even better would be updating it as soon as it's saved! Because the IDE autocompletion would not be updated unless you start it then.
maybe this is something we can solve with a2 actually
currently the check says ok if len(key) == 1 :(
we just have to set this and BAM!
So far this is english to keep off with the hassle of translation. But looking at ac'tivAid: a2 totally needs to be translated to at least german and at best offer a nice transltation framework that makes it fun and simple to translate. As well as have minumum impact on the size of the Autohotkey runtime.
ideas...
It should help you get the right mix for parts from title + class + exe. Here are some ideas:
these are super nice to haves > backlog
this is still a run-as is Autohotkey file...
That's actually not too bad when you ask me. It's super fast this way and works nice... does not use any library functions... nah there is an own getSelection() in there... ok well. Just port it!
neither edit (doubleclick) + or - seem to work atm :(
So I can remove the type checks and the different getters
super crucial with longer setups...
it's super ugly but one needs to do it like this:
http://ahkscript.org/docs/commands/_IfWinActive.htm#variant
#IfWinActive, Script Editor ahk_class QWidget
!w::
#IfWinActive, ahk_class Notepad++
!w::
#IfWinActive, Eclipse ahk_class SWT_Window0
!w::
scriptDebugVariable()
return
back to self.restore .... ?
so if there is an icon.ico/svg/png/gif in the module folder, use it as image
better we don't use any windows icons at all.
Error: Can't load icon.
Specifically: C:\Windows\system32\imageres.dll
Line#
016: Menu,Tray,DeleteAll
017: Menu,Tray,Tip,%ScriptTitle%
018: Menu,Tray,Click,1
019: Menu,Tray,add,open a2 user interface,a2UI
020: Menu,Tray,icon,open a2 user interface,%ScriptIcon%
021: Menu,Tray,default,open a2 user interface
022: Menu,Tray,add,reload a2,doReload
---> 023: Menu,Tray,icon,reload a2,%SystemRoot%\system32\imageres.dll,239
024: Menu,Tray,add,help on a2,doHelp
025: Menu,Tray,icon,help on a2,%SystemRoot%\system32\imageres.dll,95
026: Menu,Tray,add,quit a2,doExit
027: Menu,Tray,icon,quit a2,%SystemRoot%\system32\imageres.dll,223
030: SetTitleMatchMode,2
037: tt("a2 started!",1)
038: Return
although the #singleinstance flag is set there are sometimes 2 identical looking a2 running on AHK in the Task Manager. Maybe a2ui can helpt and kill a2 just before settingsChanged(). That might be way better than a2 caring about killing itself when a more recent instance is online.
We now have a unified a2 config page.
On the far end we don't want to touch the configurations manually but only through the interface. This calls for embedding all functionality in the interface in the first place. So there is never a difference of hidden and exposed functionality.
so the user will see the controls with the settings of a module read from the cfg
and when in 'dev mode': an option to change or add stuff, or option to create a module cfg with a list of provided files in the module.
...
siding is quite a bloat to really do this. But maybe I can strip it down to QSingleInstanceApp
There is lots of crazy ideas flying around in /doc.
Look if there is something useful but also put the more recent stuff from a2DO into github issues. Or at least make it consistent.
in the end: Only really useful texts should be in /doc
Still we don't even have checkbox boolean values coming to a2 runtime.
Should be easily doable with all the ui stuff we already have :]
to gather a range of imports and hotkeys in one go.
The question is how to implement this nicely!
I imagine a groupBox EditCtrl where the config holds a child list that's basically just like a usual config, has a description text if wanted but no author and date.
[
{
"typ": "group",
"enabled": true,
"disablable": true,
"label": "collection of stuff",
"name": "group123"
"children": [
{
"typ": "groupnfo",
"description": "Because none existed before this temporary description was created for \"codeTools\". Change it to describe what it does with a couple of words."
},
{
"typ": "include",
"file": "afdgasdgasd.ahk"
},
{
"typ": "hotkey",
"name": "someHotkey",
"label": "does some stuff",
"enabled": true,
"scopeMode": 0,
"functionCode": "afdgasdgasd()",
"disablable": true,
"key": "Alt+W",
...
}
]
}
]
so the EditCtrl functionality works right away within these groups. We couled probably go even deeper.. but probably shouldn't ;]
When I hit F5 to reload the AHK-runtime these procs from subprocess.Popen
somehow remain open and don't close on their own...
Ok I tried to add app exit on lastWindowClosed()
signal but that causes a2 to never reload because I close the window, reload a2ui and create a new one... but the app is already gone at this moment. So out with this.
@lipkau mentioned to create an org for a2.
sadly "a2" is still a placeholder name in short for "ac'tivAid2". And a2 is taken by some dude and anything with ' inside and CamelCase AND a number...? please no.
so we need a better name! Or just an organisation name?
a2ahk would be free. but thats not it.
it's already connected :)
https://github.com/ewerybody/a2/wiki/Edit-Scopes
currently only code works properly
currently when you change the name of a ctrl (like hotkey) the entry becomes obsolete and sits around in the db table of the module. Or even if you default the settings everything gets deleted from the value and only {} mustaches sit around in the table. This also needs to go
in the up/down thingy...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.