FAQ | Download | Example.cpp | Developer | Saw
C++ GUI Library
Shutters
Shutters is a C++ library aimed at easing the task
of Windows GUI programming. It is not a framework, so there is no classes such
as Application, it also does not have the facilities such as serializing.
For using Shutters, you need not have to change the
structure of your program. What is needed is just a message loop. So any
program can use Shutters without any specific modifications.
Features:
- Does not use resources. Say Good-bye to ugly
syntax of resource script and frustrating resources symbols.
- More intuitive than Java Swing, .NET windows
form.
- Cease the need for using new and delete. Do
you worry about the fairs of garbage collection any more?
- Want to get notification when a certain button
pressed down? Yes! Event mechanism, the simplest event mechanism ever
seen.
- No message map and macro magic, genuine C++
code.
- Similar name to .NET windows forms let you
write Shutters program while consulting your msdn .NET document.
- Only aiming at GUI programming, no troublesome
framework.
- Built on std, there is no yet another string
class. Seamless integrated with standard library.
Trade-off:
- Designed for beginners.
- Simplicity is more important than efficiency.
Do not worry about whether it is slow or big, only worry about whether it
is easy to understand. Have you ever worried about Java running slowly?
Did you worry about .NET big? Yes! But they have been invading the area of
C++.
- Only aimed to GUI. While standard library can
not include EVERY thing, how could Shutters? Let other libraries deal with
other works.
- Use virtual function no message map. There is
no crime with message map, except you should learn a new thing beside C++.
- Do not use a simulated GC, how could the false
compete with the true one? C++ program should act as in C++! This is
important. Shutter is not the C++ version of .NET windows forms or Java
Swing.
- Try to keep consistence with .NET in naming
convention, but do not let name affect design.
- Only valuable program need porting. Before
considering the fair about cross platforms, the most important thing is to
become a useful program. But try best to avoid use of some too special API
functions. Perhaps some day, Shutter will not only be Shutters under
Windows.
- Avoiding affecting by C style Windows API.
That is C code, only can act that way.
- Do not let yourself
stranded with ancient SDK, vb6 does not use resource, let alone .NET. C++ programmer is not
resource script guy.