Git Product home page Git Product logo

calband / calchart Goto Github PK

View Code? Open in Web Editor NEW
11.0 11.0 3.0 126.21 MB

CalChart is a tool for designing shows for the University of California Marching Band. While it could be adapted for other organizations, it has been designed specifically for the Cal Band.

License: GNU General Public License v2.0

C 1.88% Shell 0.31% C++ 90.94% TeX 4.47% Yacc 0.36% Lex 0.29% Python 0.42% Objective-C++ 0.34% CMake 0.88% AppleScript 0.09%

calchart's People

Contributors

allanjyu3 avatar allanwlevy avatar kmdurand avatar noahsark769 avatar rmpowell77 avatar superoven avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

calchart's Issues

Update documentation to use github instead of sourceforge

If we're going to go ahead with the full move of the project to github (to keep it in the same place with all the other Cal Band github repos) then we should update all the documentation to reference the github page rather than the sourceforge page.

Improve quality of animation graphics

The animation graphics are squares. With higher screen resolutions we can do better than that. We could even have animated gifs of people marching in particular directions, or even specific instrumentation.

Test Suite

We should have some sort of testing system that will make sure everything is in working order.

I would imagine this would consist of a couple of shows that we would open, animate, and make sure they look like they are supposed to. Maybe a check list of opening, saving, moving.

Make sure different versions play nicely

We need to handle the case if somebody is using different versions of Cal-Chart at the same time on the same computer. So we may want to add some sort of versioning system to the wxConfig that we are using. Maybe a way of marking different versions in the configs?

Remove boost requirement

We're using boost for mostly shared_ptr and functions. These were added in C++11, so perhaps the boost requirement could be removed.

Or remove as much of it as possible.

Printing on windows looks horrible

Printing on windows looks very bad, very 1980s. The font sizes are off, there is very severe pixelation.

There are probably issues with scaling and font selection.

The workaround on windows is to us the post-script legacy printing for the final product.

Add a ghost image of previous/next screen

Add a ghost of the previous field or next field. This gives you a good reference of what the previous screen was or what the next screen will be.

Also add a slider to show to do number of beats.

Add ability to insert stunt sheets from other shows

Right now if you want to add a stunt sheet from another show, you end up having to line them up side by side, and redraw it. It would be nice to just drop them in and have calchart figure out how to resolve the points.

set of color palettes

We have the default palette and you can change the colors to be something different. But it might be nice to have special palettes (like Jon's palette, black&white, greyscale, etc). So you can quickly change to a preset palette.

Crash on Leopard when exiting

  1. Opened application
  2. New Show
  3. Quit
  4. Error Message as attached
  5. Clicked Cancel
  6. Beachballed and self-quit

Error Message:

image

This crash happens on leopard:

toopbar.cpp assert "count == 1" failed in ~wxToolBar():
Reference Count of native control was not 1 in wxToolBar destructor.

looks like it's related to:
http://trac.wxwidgets.org/ticket/4468

Preferences - Reset-All requires a close and open

Go to preferences and change the color of the field. Select OK. Field changes color.

Go to preferences and reset-all. Field doesn't change color until you close and open calchart.

It should behave like ok does, it should change the color right away.

Auto-generate individual continuity

Maybe CalChart can generate a single person's continuity, making it easy for everybody in band to do their charting.

When this was previously a sourceforge issue, Anonymous commented: "I think this would be a great feature to have."

Dot swap feature

If you accidentally switch two people early on in a show, its really hard to switch them back later. It would be nice to have a swap feature where you could swap two people and then they would end up that way for the rest of the shows.

have follow the leader feature in continuity.

Maybe we can add a follow the leader continuity. This would be something where the continuity would be the based off a single point. The marchers would go to that point, and then always be the same distance behind them.

Going to preferences hangs in 3.3.4

In CalChart 3.3.4, going to preferences hangs.

Probably due to this in cc_preferences_ui.cpp:
for (CalChartColors i = COLOR_FIELD; i < COLOR_NUM; static_cast(static_cast(i)+1))

line 181, 210, and 232.

Should be changed to:

for (CalChartColors i = COLOR_FIELD; i < COLOR_NUM; i = static_cast<CalChartColors>(static_cast<int>(i)+1))

Background image should be undoable

When the background image is moved or resized, it should be undoable so you can move it back to where it was.

This would be a little tricky. Right now background image is part of the main frame canvas. To have it be part of the undo system we would have to move it into the document.

Though if it was in the document you could save it with the file. So you would have the background image placement preserved with every show. Food for thought.

Code Documentation

I'm going to be introducing other CompComm members to the CalChart code soon, and I want to provide them with as many resources as possible for understanding how the program works. I'd like to comment it up with Doxygen, if that's cool with you guys.

Segfault when opening show window on linux

The program segfaults whenever I attempt to create a new show or open an existing show. The fault occurs within the tbarbase.h wxWidgets library file which is called at line 223 in calchart file basic_ui.cpp.

I haven't quite familiarized myself enough yet with the project or wxWidgets to track down the bug, but am working on it. Any guidance would be much appreciated.

Tempo per sheet

Add a tempo per sheet for the show. There is a default show tempo. And then when a sheet changes the tempo, that's the tempo for the rest of the show after that point. The idea is that you be able to play an entire show without adjusting the tempo continuously, and it could play in real time

Add print-continuity to be saved with file.

Right now there is the continuity that describes the way the points move, and the Print Continuity, the continuity that gets printed with the show. The user has to add the print continuity to the file before the print, and it doesn't get saved with the file.

We should add the print continuity directly to the document. We don't need to make sure it is correct, but it should be saved with the file so that it stays with the show in case somebody wants to reprint the file with the continuity.

Draw rectangle faster

Drawing the rectangle seems to have a little lag. Maybe it isn't drawing as fast as windows?

Auto-Animation for PCs

Dots auto-animate in animate screen for PCs only. Only way of stopping this is to press "Stop" button. Suggest either NOT auto-animating (like MacOSX version) or adding feature to choose whether or not to auto-animate.

Home viewing program

Could we make a simpler program so that somebody could download a calchart shw file, type in their continuity and it would show them their individual continuity?

error: C compiler cannot create executables

Hey guys, I'm running into a problem building Calchart on OSX 10.7. I'm looking at the build instructions for Mac (here), but I'm getting the following error:

checking whether the C compiler works... no
configure: error: in `/Users/noah/Documents/programming/calband/calchart-build/wxWidgets-3.0.0-rc2/build-results':
configure: error: C compiler cannot create executables
See `config.log' for more details

When I try to run

../configure --with-cocoa --with-macosx-version-min=10.7 --with-macosx-sdk=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk --enable-debug --enable-debug_info --disable-shared CXXFLAGS="-std=c++11 -stdlib=libc++" OBJCXXFLAGS="-stdlib=libc++ -std=c++11" LDFLAGS=-stdlib=libc++

(Note that in the above I changed MacOSX10.9.sdk to MacOSX10.7.sdk. It doesn't work with the 10.9 one either, but this is to be expected because MacOSX10.9.sdk doesn't exist on my 10.7 system. I've updated Xcode as much as I can. Also, it doesn't work with sudo. I can't seem to find a solution online anywhere.)

Do you guys know what might be going wrong here, or should I just suck it up and update to Mavericks? Maybe @rmpowell77 would have to specific advice.

For reference, here's the relevant part of config.log: http://pastebin.com/gH4nQEnF

Add printed continuity editor

I'm removing the continuity editor, but if we ever wanted to bring it back, we should.

And we could make it RTF if needed.

Use precompiled headers

It would be nice to use precompiled headers to improve build times:

http://www.wxwidgets.org/develop/standard.htm#pch
http://wiki.wxwidgets.org/Precompiled_Headers

Though it looks like there is no support for mac. So not sure how we handle that...

Update:
If you're using xcode you just set GCC_PRECOMPILE_PREFIX_HEADER = YES and
GCC_PREFIX_HEADER = wxWidgets/include/wx/wxprec.h (I haven't used make with
wxWidgets on Mac in a long time so I'm not sure about precompiled headers
without xcode...)

Update 2:
Interestingly enough, here's what the header says:

// check if to use precompiled headers: do it for most Windows compilers unless
// explicitly disabled by defining NOPCH
if defined(VISUALC) || \
defined(__DMC__)       || \
defined(__VISAGECPP__) || \
defined(__WATCOMC__)   || \
defined(__BORLANDC__)

// If user did not request NOCPH and we're not building using configure
// then assume user wants precompiled headers.
#if !defined(NOPCH) && !defined(__WX_SETUP_H__)
    #define WX_PRECOMP
#endif
endif

conspicuously Missing: OSX…
Guess I've been drinking the coolaid too long...
-Richard

Update 3:
Ah... no, it looks like wxWidgets does this differently for gcc/clang.
WX_PRECOMP is defined in the gcc command line options either by configure
or the xcode project. It looks like they now include the .xcconfig files in
the samples xcode projects so that's another way of getting all this
right. Then it should just be automatic. Precompiled headers in Visual
Studio is more of pain.

Compiled doxygen docs online

@kmdurand, @rmpowell77 - I put the compiled doxygen docs online with github pages. All the html that Kevin sent in the email earlier today is now on the gh-pages branch and can bee seen at calband.github.io/calchart/.

Are you guys good with this? If so, I can send out an email telling everyone that they can access the docs online too (rather than having to open the html files in their browser).

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.