Skip to content

Instantly share code, notes, and snippets.

@sancarn
Last active May 30, 2019 20:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sancarn/762e2efce36415882d2c728bdfcba5bb to your computer and use it in GitHub Desktop.
Save sancarn/762e2efce36415882d2c728bdfcba5bb to your computer and use it in GitHub Desktop.
class A_ {
class COM {
GetActiveObject(){
}
GetActiveObjects(){
}
class _COMObject {
__New(obj){
;Forward object calls to proxy object.
this.proxy := obj
}
__InvokeDispID(DISPID,params){
}
__QueryInterface(IID){
}
__SetInvokeInterface(interfaceDescriptor){
}
}
}
class NET {
class HTTP {
class Server {
__New(port:=0){
}
}
class Client {
request(reqType,url,options){
}
}
}
class FTP {
class Server {
__New(port:=0){
}
}
class Client {
request(reqType,url,options){
}
}
}
}
class Windows {
static root {
get(){
;get top level window
return new __UIElement({"__type":"root"})
}
}
class __UIElement {
__New(obj){
if obj.__type == "hwnd" {
;...
} else if obj.__type == "Acc" {
;...
} else if obj.__type == "UIA" {
;...
} else if obj.__type == "root" {
;...
} else {
;...
}
}
children {
get(){
;...
}
}
close(){
;...
}
hide(){
;...
}
show(){
;...
}
parent {
get(){
;...
}
set(){
;...
}
}
style {
get(){
;...
}
set(){
;...
}
}
highlight(){
;draws topmost rect around window
}
spy(msgFilter){
;...
}
getIAccessible(){
;... WM_GETOBJECT?
}
getIDispatch(){
;... WM_GETOBJECT?
}
getInterface(IID){
;...
}
}
}
class Exception {
;...
}
class Types {
class Struct {
;CStruct e.g. HotKeyIt's struct
}
;...
}
class Shell {
__New(ShellClasses){
;...
}
class ShellObject {
__New(paths){
;...
}
}
class File extends ShellObject {
__New(path){
base([path])
}
children {
get(){
;...
}
}
}
class Folder extends ShellObject {
__New(path){
base([path])
}
children {
get(){
;...
}
}
}
class ZipArchive extends ShellObject {
static create(path){
if path.extension =~ "zip" {
} else {
return false
}
}
__New(path){
}
children {
get(){
;...
}
}
}
}
class Data {
class CSV {
parse(file,options){
;...
}
}
class JSON {
parse(file,options){
}
}
class XML {
parse(file,options){
}
}
class HTML {
parse(file,options){
}
}
class YAML {
parse(file,options){
}
}
class INI {
parse(file,options){
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment