Commit Graph

486 Commits

Author SHA1 Message Date
Petr Mrázek
f56eff04ef Fix (hopefully) library dependency resolution.
Installing libs is now enabled, hardcoded.
Enable -Wall for all builds.
Fix many warnings and latent bugs.
2013-12-01 16:34:51 +01:00
Petr Mrázek
f27a6c39ea Fix login and startup logging issues
Auth uses the refresh endpoint instead of validate. This means less password entering.
Console will now only autoscroll when already scrolled all the way down.
Better conformance with the Yggdrasil auth protocol (not complete yet, but Mojang launcher isn't complete either).
Fix bug that prevented saving the account data (uninitialized variable).
Accounts can now trigger account list saving, this is used for the refresh endpoint.
2013-12-01 02:00:42 +01:00
Anthony Parrott
6518296e99 Fix OS X packaging problem
GLOB_RECURSE was pointing at the wrong directory - it needed to point
at the directories that had the dylib files in them to fix them so they
didn’t point at the local installed version of Qt
2013-11-29 02:31:30 -05:00
Andrew
0395474a0c Nuke dead code 2013-11-28 22:05:58 -06:00
Andrew
f3a9dde52e Rework the password dialog
It's now used as a general purpose "account edit dialog". It'll be used
for entering usernames, passwords, or both.
2013-11-28 21:40:40 -06:00
Andrew
bfc9e1e5d5 Verify access tokens before launching Minecraft
Kind of an important thing to do... Heh...
2013-11-28 20:45:52 -06:00
Andrew
a4c5f0135e Allow setting no default account
This allows the user to select an account to use every time they launch
an instance.
2013-11-27 16:14:18 -06:00
Sky
7d7579d7f0 Move "manage accounts" to right, use player skin when available 2013-11-27 16:56:15 +00:00
Petr Mrázek
82225a21e1 Merge branch 'feature_yggdrasil' into develop
Conflicts:
	gui/MainWindow.cpp
	logic/OneSixInstance.h

Fix missing session id functionality for legacy and old onesix.
2013-11-24 18:41:35 +01:00
Petr Mrázek
ca297fca79 Prepare for rework of instance launch/update
Added missing licenses
Added a Java functionality checker (detects 32/64bit java)
Refactor of *Update - no longer based on BaseUpdate, but Task directly
Fixed runner script to not derp up on 32bit linux. Could add more detection and error reporting there.
Resources are now split into graphics and generated. Generated resources are placed in the build tree and included from there.
Used the Java checker in the main settings dialog (TODO: instance settings).
Partial support for ${arch}-using libraries - both 32 and 64 variants of ${arch} are downloaded.
2013-11-24 06:36:16 +01:00
Andrew
cdca530139 Implement account list and account list dialog 2013-11-18 12:05:35 -06:00
Petr Mrázek
210629e274 Use the forge mirrors for downloading forge libraries
Let's hope we never, ever see a forge download error again.
2013-11-17 11:44:18 +01:00
Andrew
9cfd5ae465 Add test authentication task.
It doesn't actually do anything with the server's reply yet.
2013-11-14 12:17:38 -06:00
Andrew
d84b1a91f4 Add abstract base class for Yggdrasil tasks. 2013-11-13 14:12:31 -06:00
Andrew
962639aa6d Added data structures for Mojang Account. 2013-11-11 12:59:59 -06:00
Petr Mrázek
bb7e8985f6 Reformat and (slightly) decruft all the things. 2013-11-04 02:53:05 +01:00
Petr Mrázek
4466929074 Add instance copying, fix instance creation (with identical names) 2013-11-03 21:28:04 +01:00
Sky
bade253a1a Added NagUtils, nag people about trying to override JVM memory options 2013-11-03 15:20:26 +00:00
Sky
b0ef429786 Add selectable message box helper, use it, make login GUI error label selectable 2013-10-29 12:40:09 +00:00
Petr Mrázek
9233477295 S3 bucket listing support and network code refactors.
* Adds support for listing all objects in an S3 bucket.
* Renames a bunch of network related classes (Download->Action)
* Net actions now have static constructors
2013-10-26 19:55:48 +02:00
Orochimarufan
78882ff6b1 Fix MainWindow Icon; Fix WM_CLASS issue; now links QX11Extras and libxcb on linux 2013-10-18 18:43:19 +02:00
Sky
40a2456646 Huge Java detection refactor, version dialogs on first run (no JavaPath set) and "auto detect" button 2013-10-14 03:00:06 +01:00
Sky
f2291ef161 Move mod info frame and handler to MCModInfoFrame, use on all instances 2013-10-08 21:45:48 +01:00
Sky
b5816f976e Merge branch 'develop' of github.com:Drayshak/MultiMC5 into develop 2013-10-06 01:15:43 +01:00
Sky
7aeea14a02 Merge branch 'develop' of https://github.com/MultiMC/MultiMC5 into develop 2013-10-06 01:13:20 +01:00
Sky
d48aae7a16 Fix Linux CMake issues arising from Windows workaround 2013-10-06 01:09:21 +01:00
Petr Mrázek
f83119ce7e Added file logger 2013-10-06 01:13:40 +02:00
Sky
1dee4bb60d Add naive Windows Java detection - JavaUtils for finding it on other systems (incomplete) 2013-10-05 01:08:13 +01:00
Andrew
48bd3add29 Added a make target that prints the version name. 2013-10-01 17:01:41 -05:00
Andrew
1ed822d6e8 Made run script instal as executable.
Also fixed a small bug with the run script.
2013-10-01 16:30:30 -05:00
Andrew
02a7d147ef Add run script to install.
Also renamed "translations_target" to "translations". The old name was
dumb and annoying.
2013-10-01 16:13:21 -05:00
Andrew
22bdf67bf7 Merge branch 'master' into develop
This pulls in some changes I made to the CMakeLists file earlier.
2013-10-01 03:31:20 -05:00
Petr Mrázek
c05a39147a Implemented xz and pack200 unpackers required for proper forge installation.
Merge branch 'feature_forge_unpackers' into develop

Conflicts:
	CMakeLists.txt
2013-09-30 03:29:12 +02:00
Petr Mrázek
e45b444242 Add tweaks to make things build on windows 2013-09-30 03:26:23 +02:00
Petr Mrázek
8b0f8b9e59 ``Working'' forge unpackers. Needs a lot of hardening but good for alpha. 2013-09-30 02:34:46 +02:00
Petr Mrázek
d267d86f6e Replace lzma with xz. Tweaks to fix debug builds. 2013-09-28 18:43:30 +02:00
Petr Mrázek
2173abb9a8 Fix stuff up some more 2013-09-28 18:27:34 +02:00
Petr Mrázek
071ac45925 Merge branch 'develop' of https://github.com/hyperfang8/MultiMC5 into develop 2013-09-28 18:25:55 +02:00
Petr Mrázek
d903b0f0ea no unstable stuff. disable it. 2013-09-28 14:01:57 +02:00
hyperfang8
5c8def4ecc Disable pack200 and Enable MultiMCLauncher dep
I disable pack200 in cmake because it fails to compile.
I also renable MultiMCLauncher dep because resource file requires it.
2013-09-28 11:00:34 +02:00
Sky
8c36e69b06 Attempt fix for cmake warning spam on Windows 2013-09-26 12:49:58 +01:00
Petr Mrázek
2c8dc0b855 Compression algo dependencies, still need hackery... 2013-09-26 02:59:56 +02:00
Petr Mrázek
984c36e571 Implement basic yggdrasil auth.
No fancy login token saving involved.
2013-09-23 00:29:40 +02:00
Petr Mrázek
ceca6959d2 Working 1.6 modding (currently only forge) 2013-09-22 04:21:36 +02:00
Andrew
db3c26f53e Fixed CMakeLists install target on Linux. 2013-09-19 12:19:01 -05:00
Petr Mrázek
b979d0ce5d Implement legacy forge button!
Many refactors of the task system.
Progress dialog now accepts generic ProgressProvider objects
2013-09-18 00:00:35 +02:00
Petr Mrázek
d38b90530b Forge version list implementation. Needs integration and testing. 2013-09-16 00:54:39 +02:00
Petr Mrázek
7721c57e5e Split OneSixVersion into parts. 2013-09-11 23:43:17 +02:00
Stiepen22
3a08f01509 Changed CMakeList.txt to support translations 2013-09-08 20:18:55 +02:00
Petr Mrázek
6bea4ec988 Use HttpMetaCache to minimize network use. 2013-09-08 02:15:20 +02:00
Petr Mrázek
6892c11e9f Move a good chunk of the singleton objects into a new QApplication subclass. 2013-09-07 04:00:58 +02:00
Petr Mrázek
634e22298b Untested ETag cache class.
Yep.
2013-09-06 21:58:51 +02:00
Petr Mrázek
d587e7ada4 Eh, Derp. 2013-09-05 22:35:57 +02:00
Petr Mrázek
f8e8414d54 Speed up the downloads. Massively. 2013-09-02 00:25:40 +02:00
Petr Mrázek
5ff6fbf464 Basic 1.6 mod management (no jar mods) 2013-08-28 04:38:29 +02:00
Petr Mrázek
a63c7340a6 Nuke the old instance model, LONG LIVE THE NEW ONE 2013-08-26 06:30:11 +02:00
Petr Mrázek
7686741ef9 Do not assume clang on OSX. 2013-08-26 04:45:40 +02:00
Petr Mrázek
00742af3a6 OS compatibility and generic cleanup.
Removed bspatch/patchlib
Now builds and runs on Windows
2013-08-26 02:53:29 +02:00
Petr Mrázek
f0990fae4b Many improvements
PermGen can be tweaked from the settings menu
Groups are saved on change/exit
Install target is no longer completely broken
All the deplibs are now static
Added notes dialog
Fixed ini file format support (can save strings with newlines, tabs. UTF-8 is explicitly used!)
Rename button now uses line breaks so it doesn't grow ever wider (Added a custom tool button subclass)
There is now a CAT button. Meow.
2013-08-25 22:48:41 +02:00
Petr Mrázek
bbc47cb8bd Sync, removal of webkit as a dependency, removal of the web windows. 2013-08-20 02:29:36 +02:00
Petr Mrázek
c92ad7dcf8 Drag and Drop, mod management. 2013-08-18 20:52:17 +02:00
Petr Mrázek
253067c782 Move all the things (YES. Move them.)
Also, implemented some basic modlist logic, to be wired up.
2013-08-17 13:40:51 +02:00
Petr Mrázek
1782d5ad9a Implement icon picker, bring back raster icons. 2013-08-11 01:07:15 +02:00
Petr Mrázek
2e0cbf393a Massive renaming in the backend folder, all around restructure in the same. 2013-07-29 00:59:35 +02:00
TakSuyu
dc39d09339 Merge remote-tracking branch 'upstream/master'
Conflicts:
	gui/mainwindow.cpp
2013-07-27 12:55:51 -07:00
TakSuyu
44498f9894 Renamed some files to support naming scheme
changed modeditwindow -> legacymodeditdialog
added modeditdialog
mapped slots for modeditdialog
2013-07-27 12:42:32 -07:00
Stiepen
b5450042b5 Broke instance loading(?), also attempted to make Toolbar grayed out when no instance is selected. For debug purposes it is initially not grayed out 2013-07-14 22:01:30 +02:00
Petr Mrázek
e49b818698 Add queued downloader, some super-minor UI tweaks in stuff that's not even visible yet. 2013-06-30 22:39:57 +02:00
Andrew
3b38e5f924 Implemented LWJGL version lists.
The LWJGL list actually doesn't use tasks for loading. Instead, it takes advantage of the
QNetworkAccessManager's asynchronous requests. This is a system that I may look to implement for other version
lists and things such as the Minecraft version list and possibly even instance mod lists.

Loading things this way means that code that wants to load a list can simply call the load list function, rather
than having to get a task from the list and execute the task. Unfortunately, it also means we can't have task
progress dialogs for loading lists, but it shouldn't really be too difficult to write one that works with this
system.

At some point in the future, I'll probably end up putting all the code for this method of loading lists into a
base class and then update the other lists to support it.
2013-05-17 11:53:22 -05:00
Andrew
055198303c Removed old plugin system and implemented some version list stuff. 2013-05-03 14:41:37 -05:00
Andrew
276cfb18a6 Fix quazip issues. 2013-04-01 12:04:40 -05:00
Andrew
ebb2c54975 Merge branch 'master' of git://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	gui/mainwindow.cpp
2013-03-28 11:37:12 -05:00
Andrew
168ed3e8e5 Implemented version lists.
Further work on this is still needed. Currently there is no sorting or filtering of any kind. In addition,
changes need to be made to fix issues with bad ETags since the current system here is based on MultiMC 4's
version list system before it was fixed.
2013-03-28 11:33:31 -05:00
Orochimarufan
e4f86893a8 fix merge issues, make console window work again 2013-03-22 14:40:55 +01:00
Orochimarufan
cd1fdbbbc2 Merge branch 'master' of http://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	main.cpp
2013-03-22 14:01:54 +01:00
Orochimarufan
f01bf10dc5 Implement Keyring system base 2013-03-22 13:51:21 +01:00
Petr Mrázek
e4806ab08d Add SVG icon rendering/cache 2013-03-20 07:59:35 +01:00
Andrew
ad70e3fd4c Changed spaces to tabs in CMakeLists.txt because space indenting is the work of satan. 2013-03-19 19:15:19 -05:00
Guilherme Espada
bf49e58d11 Add travis CI building.
Uses GCC
2013-03-19 20:17:35 +00:00
Petr Mrázek
46f93311af Instance view, model, delegate. 2013-03-11 22:19:17 +01:00
Andrew
36396f7c6a Massive re-organization. 2013-02-26 16:47:39 -06:00
Andrew
23474da175 Merge branch 'master' of git://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	main.cpp
2013-02-25 13:31:37 -06:00
Andrew
498225debd Rewrote the settings system. It may still need some work. 2013-02-25 13:24:46 -06:00
Orochimarufan
3a173648e7 Implement ConsoleWindow 2013-02-22 18:18:23 +01:00
Orochimarufan
10c707363b Merge branch 'master' of http://github.com/Forkk/MultiMC5 2013-02-22 16:19:37 +01:00
Orochimarufan
9f174ad4e7 Implement Instance launching
Use --launch <instance> to test
2013-02-22 16:17:31 +01:00
Andrew
a7111b1328 Added interface for game update tasks. 2013-02-21 18:10:17 -06:00
Orochimarufan
eda7b6cf9d Merge branch 'inst_rewrite' of http://github.com/Forkk/MultiMC5 2013-02-21 21:55:47 +01:00
Orochimarufan
d891032219 use QtCreator's $QTPATH in CMake 2013-02-21 21:55:35 +01:00
Andrew Okin
9118de4b7c Fixed install on Linux 2013-02-21 14:52:23 -06:00
Andrew
2e0f6091b4 Changed java/endian.h to java/javaendian.h in CMakeLists 2013-02-21 14:36:01 -06:00
Orochimarufan
ca1fd44637 Merge branch 'master' of http://github.com/peterix/MultiMC5
Conflicts:
	CMakeLists.txt
	gui/mainwindow.cpp
	main.cpp
2013-02-21 20:40:32 +01:00
Orochimarufan
576e979df4 Implement About Dialog
Prepared XDG icon theme in :/icons/multimc. will only be usefull as soon
as Qt decides to support custom fallback themes. use the resources
directly for now.
2013-02-21 19:35:52 +01:00
Andrew Okin
3649904974 Fixed CXX flags. 2013-02-21 12:35:33 -06:00
Andrew
96e4f73a94 Include Git commit hash in config.h 2013-02-21 11:02:48 -06:00
Andrew
faddeb2c13 Reorganized the main CMakeLists file and added an icon on Windows. 2013-02-21 10:32:13 -06:00
Andrew
dd2e836b4c Split MultiMC up into a few separate libraries.
Fixed plugin system.

Tons of other stuff...
2013-02-20 19:10:09 -06:00
Andrew
f71479ec33 Added stdinstance plugin and a ton of plugin stuff. 2013-02-20 08:32:59 -06:00
Orochimarufan
519f66efee Merge branch 'master' of http://github.com/Forkk/MultiMC5 2013-02-20 13:17:03 +01:00
Orochimarufan
c523a2c752 implement commandline parsing 2013-02-20 00:07:52 +01:00
Andrew
6e5017e48b Implemented loadList() stuff. 2013-02-19 12:15:22 -06:00
Andrew
15c7efffa1 Added InstanceLoader and InstanceType headers. 2013-02-18 14:50:11 -06:00
Andrew
56480c6fe4 Merge branch 'master' into inst_rewrite 2013-02-18 13:45:49 -06:00
Andrew
b8844e4413 Install plugins in the right dir. 2013-02-18 13:33:22 -06:00
Andrew
d00bd41c92 Switched to BundleUtils and added OS X support. 2013-02-18 12:59:01 -06:00
Orochimarufan
cf0e78b46d Merge branch 'master' of http://github.com/Forkk/MultiMC5 2013-02-18 17:08:18 +01:00
Andrew
f6a62d98aa Merge branch 'master' into inst_rewrite 2013-02-14 22:41:45 -06:00
Andrew
98b15ba02a Merge branch 'master' of github.com:Forkk/MultiMC5 2013-02-14 22:41:35 -06:00
Andrew Okin
bd0e4b7606 Merge pull request #1 from mortu/master
Successfully build using clang 4.1 on OSX
2013-02-14 20:41:03 -08:00
Andrew
4b1680f242 Started reworking the instance system. 2013-02-14 22:40:00 -06:00
Andrew
fe452e3ac9 Added SigList class. 2013-02-13 12:16:11 -06:00
Orochimarufan
369b1c55c9 implement desktop shortcut creation. windows code not tested. 2013-02-13 04:03:15 +01:00
Orochimarufan
c755195b97 Merge branch 'master' of http://github.com/Forkk/MultiMC5 2013-02-13 00:48:20 +01:00
Orochimarufan
79c5ae121b add first iteration of the integrated browser 2013-02-13 00:35:35 +01:00
Andrew Okin
d1b1d7e800 Don't bother installing Qt 5 dependencies. Leave it to the user. Maybe we'll make a debian package or something later. 2013-02-12 13:59:15 -06:00
mortu
b7120b293e Successfully build using clang 4.1 on OSX 2013-02-12 13:50:45 -06:00
Andrew
5f8784a62e More damn libxcb dependencies. DLL hell is not fun. 2013-02-12 13:25:42 -06:00
Andrew Okin
4c5d19a62a Fixed Linux install / package support in CMakeLists. Fixed Linux start script. 2013-02-12 12:49:13 -06:00
Andrew
397c0cb555 Fixed install to automatically include required DLLs. Suck it, DLL hell! 2013-02-12 11:57:27 -06:00
Andrew Okin
5a4b2ad000 Linux packaging stuff. 2013-02-12 10:14:23 -06:00
Andrew
b66be337fd Merge branch 'master' of ciserver.forkk.net:MultiMC5 2013-02-06 00:40:07 -06:00
Andrew Okin
814469eec6 Added Linux support to CMakeLists. 2013-02-06 00:38:28 -06:00
Andrew
e475f5d512 Implemented login system. 2013-02-05 19:22:19 -06:00
Andrew
a416c58a93 Started working on task system and login system. 2013-02-05 16:34:20 -06:00
Andrew
f8ea8d9e3b Added base class for tasks. 2013-02-05 13:40:43 -06:00
Andrew
2f619e4043 Added install target for Windows. 2013-02-05 12:09:20 -06:00
Andrew
74c5a582b1 Added MultiMC_LINK_ADDITIONAL_LIBS option to CMakeLists. 2013-02-04 10:31:21 -06:00
Andrew
3c8a12aded Added new instance dialog. 2013-02-01 13:07:36 -06:00
Andrew
076fb8a65e Got rid of boost. 2013-01-31 14:32:04 -06:00
Andrew
7ac25bf2da Implemented the view folder buttons on the main window. 2013-01-29 00:26:24 -06:00
Andrew
3a0367a79c Resized main window and added version info. 2013-01-28 18:01:20 -06:00
Andrew
a25bedd770 Implemented settings dialog. 2013-01-28 15:35:09 -06:00
Andrew
8926b24226 Add .user files to gitignore and remove deleted files from CMakeLists. 2013-01-25 13:29:45 -06:00
Petr Mrázek
00893b3cfc Instance model (or at least something like it) 2013-01-22 05:56:12 +01:00
Petr Mrázek
f33ab9beb1 Sync 2013-01-20 01:16:07 +01:00
Petr Mrázek
b1d00fce8d CMake build system, big pile of libs: bspatch, quazip, java, the launcher 2013-01-11 02:25:40 +01:00