Git Product home page Git Product logo

Comments (6)

alunbestor avatar alunbestor commented on July 23, 2024

Finder does not tile folder backgrounds, and it limits background images to a maximum of 8000x8000 pixels or the maximum texture size of your GPU, whichever is smaller. Boxer generates a background as large as it can, but this is not enough for folders with lots of games.

Finder's limits are unfortunately out of Boxer's control; the problem can only really be avoided by replacing the folder background hack with a full in-app browser UI (which would be able to display the games however it likes).

The workaround for now is to organize your games into subfolders. When you next click "Browse your games" in Boxer, it will apply the shelf background style to all subfolders it finds in the DOS Games folder.

from boxer.

davidrenne avatar davidrenne commented on July 23, 2024

Thank you so much for that info! I will create sub directories

from boxer.

davidrenne avatar davidrenne commented on July 23, 2024

While I have you on here. If I were to recompile the project to automatically fetch images. How might I accomplish that and which files should be noted to add that feature?

from boxer.

alunbestor avatar alunbestor commented on July 23, 2024

What do you mean by automatically fetch images?

from boxer.

davidrenne avatar davidrenne commented on July 23, 2024

Well to go out to a domain or google search for "DOS GAME" + Automatically generated name in your text box.

https://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=DOS%20Game%203%20Demon

Get some JSON images and then fetch the first image and people could just remove these or overwrite them if they are incorrect.

Unfortunately my apple email is not on a "Mac development team" and I dont want to spend 99 dollars a year just to recompile this thing. Apple really steals dev money here with this annual subscription.

from boxer.

alunbestor avatar alunbestor commented on July 23, 2024

You should be able to compile Boxer without a developer account by doing the following steps:

  1. click on the blue "Boxer" entry at the top of the sidebar to display the Boxer project settings.
  2. Select "Boxer" under the "Targets" heading.
  3. Set the "Signing" toggle from "Developer ID" to "None".

As for automatically fetching cover art for a game... you may want to start with _generateGameboxWithError: in BXImportSession.m, line 1521 and onward. When importing a game, BXImportSession first checks the game's folder to see if it contains an icon file that could be used. If it can't find one, it generates a "bootleg" icon (e.g. a picture of a CD case with the game's name written on it) and uses that instead.

You could add an intermediate step in that method that hits the google image search API, downloads the image for the top result, converts it to an NSImage and supplies that image as the icon. If you want Boxer to apply its shiny box appearance to the image as well, then you can call [BXCoverArt coverArtWithImage: theImageYouDownloaded] and get a cover-artified NSImage back.

(The _generateGameboxWithError: method is expected to run synchronously, and a network request would thus have to block execution until it gets a response. That method and its call site should be redesigned to be properly asynchronous, but that is a larger undertaking that's not critical to the initial implementation of your feature.)

from boxer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.