Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

110
LINES

< > BotCompany Repo | #1034390 // Gazelle 22 Standalone [dev version, backup]

JavaX source code (desktop) [tags: use-pretranspiled] - run with: x30.jar

Download Jar. Uses 5077K of libraries. Click here for Pure Java version (35433L/197K).

// WELCOME!! This is THE PROGRAM YOU ARE LOOKING FOR.

!7

//set flag OtherLoadableUtils. lib 1033861

// INCLUDE THE MAIN MODULE
!include #1033862 // Gazelle Screen Cam [dev version]
replace MainModule with GazelleScreenCam.

!include early #1033891 // include GazelleHost early for flags like PingV3

//set flag InCore.
set flag NoJavaXJar.
set flag NoLocalSnippets.
set flag OurSyncCollections.

sS windowTitle = "Gazelle 22";
sS progIDForDBAndAutoUpdate = #1033860;
sbool pingSourceStrictMode;

static GazelleHost host;
static MainModule client;
static ThreadPool threadPool;

p {
  loadableUtils.utils.__setJavaX(main.class);
  standaloneInit();
  
  ping_v3_setPingSourceMaker(-> {
    //System.out.println("pingSourceMaker");
    if (pingSourceStrictMode)
      fail("Strict mode - make a ping source first!!");
    ret new PingSource(threadPool, "legacy");
  });
  
  threadPool = new ThreadPool(findIntArg cores(args, numberOfCores()));
  print(threadPool);
  //threadPool.verbose = true;
  PingSource ps = new(threadPool, print("Starting Gazelle"));
  ps.do(-> {
    System.out.println("Pinging");
    ping();
    //if (true) fail("error test");
  
    print("Pinged");
    
    programID = progIDForDBAndAutoUpdate;
    
    // patch utils.preferredScreen
    
    preferredScreen = -> {
      if (host == null) ret 0;
      var stem = host.stem;
      if (stem == null) ret 0;
      int screen = max(0, screenNrOfWindow(mainWindow()));
      ret screen;
    };
    
    // patch utils.showForm_makeFrame to use JDialog
    // (to avoid dialogs being hidden behind always-on-top window)
    
    showForm_makeFrame = (title, panel) -> {
      var dialog = new JDialog(mainWindow(), title);
      setDialogContents(dialog, withMargin(panel));
      packWindow(dialog);
      minWindowWidth(dialog, 400);
      centerDialogOverOwner(dialog);
      dialog.setVisible(true);
      //setBounds(dialog, defaultNewFrameBounds());
    };
    
    if (cic(args, "delete-session")) {
      print("Deleting session (" + programDir(programID) + ")");
      clearConceptsOf(programID);
    }
    
    // migrate classes for legacy databases
    F1<S, Class> baseClassFinder = cast _defaultClassFinder();
    setDefaultClassFinder(func(S name) -> Class {
      name = replacePrefix("loadableUtils.utils$", "main$", name);
      //print("G22 class finder: " + name);
      
      if (eq(name, "main$Challenge")) {
        print("Legacy Challenge converted!");
        ret Challenge;
      }
        
      ret baseClassFinder.get(name);
    });
    
    host = new GazelleHost(threadPool, -> {
      ret client = new MainModule;
    });
    if (sameSnippetID(programID, #1033860))
      windowTitle += " dev";
    host.windowTitle = windowTitle;
    host.run(args);
    
    if (!cic(args, "console")) {
      print("Stopping System.out");
      printAlsoToSystemOut = false;
    }
  });
  print("aha.");
}

static Window mainWindow() { ret host.stem.window; }

static Map generalMap = syncMap();

Author comment

Began life as a copy of #1033860

download  show line numbers  debug dex  old transpilations   

Travelled to 2 computer(s): bhatertpkbcr, mqqgnosmbjvj

No comments. add comment

Snippet ID: #1034390
Snippet name: Gazelle 22 Standalone [dev version, backup]
Eternal ID of this version: #1034390/1
Text MD5: 09fa79e7c5cf97bceb9ef072364e5453
Transpilation MD5: 25a75ba07f9b992de87f0f1d09d1e551
Author: stefan
Category: javax / screen recognition
Type: JavaX source code (desktop)
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2022-02-05 01:47:16
Source code size: 3101 bytes / 110 lines
Pitched / IR pitched: No / No
Views / Downloads: 80 / 466
Referenced in: [show references]