cjwizard / cjwizard Goto Github PK
View Code? Open in Web Editor NEWA library for creating swing based step-by-step wizards with Java 7+
Home Page: https://cjwizard.com
License: Apache License 2.0
A library for creating swing based step-by-step wizards with Java 7+
Home Page: https://cjwizard.com
License: Apache License 2.0
From [email protected] on May 15, 2011 09:19:37
There's no easy way to prevent user from moving onto next page.
I suggest implementing validation functional in WizardPage:
/**
* validation for page. should be called before moving on.
* descendants can overload this function to warn user on incorrect fields
* @returns true by default
*/
public boolean validateFields(){
return true;
}
in WizardContainer class couple of methods should be extended:
public void finish() {
....
WizardPage lastPage = getPath().get(getPath().size()-1);
if (!lastPage.validateFields()) return;
....
}
public void next() {
if (0 != _path.size()){
// get the settings from the page that is going away:
WizardPage lastPage = _path.get(_path.size()-1);
if (!lastPage.validateFields()) return;
....
}
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=7
I just tried to integrate the released 1.0.5 Version...
At runtime, I get
Caused by: java.util.MissingResourceException: Can't find bundle for base name com.github.cjwizard.i18n.cjwizard, locale de_CH
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1564)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1387)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:773)
at com.github.cjwizard.WizardContainer.<clinit>(WizardContainer.java:61)
... 43 common frames omitted
I looked into the cjwizard-1.0.5.jar
, there is indeed the i18n package missing with the properties files...
Best regards,
Peti
The main page lists the >>Java Wizard library at Java.net (https://wizard.dev.java.net/).<<, but that page is not available any more.
Current values:
PREVIOUS=Zuruck
NEXT=Nachste
FINISH=Fertig
CANCEL=Cancel
"Better" values:
PREVIOUS=< Zurück
NEXT=Weiter >
FINISH=Fertig
CANCEL=Abbrechen
Best regards,
Peti
From [email protected] on June 30, 2008 21:09:45
Reproduction:
The "Finish" button should go back to being disabled on all pages by default.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=1
I think is time to release to the maven repository as the ticket that was opened (https://issues.sonatype.org/browse/OSSRH-14241) was closed as Fixed.
This have to be done by @creswick as I think is who have the rights to do it. You can see how to do it with http://central.sonatype.org/pages/releasing-the-deployment.html.
This is needed to close #14 finally.
Is there any example for optional steps, or tree like structures
For instance, if option A is check, the slide page should page A1, otherwise skip to page B
From [email protected] on November 16, 2010 03:01:30
cjwizard depends on org.apache.commons.logging.LogFactory which is pretty bad for a wizard library which could otherwise be used in a variety of projects not using apache commons logging.
Thus, logging should be dropped (it’s debug only anyway) or made optional.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=3
From [email protected] on March 28, 2014 03:44:18
What steps will reproduce the problem?
What is the expected output? What is expected is that createPage will be called so you show the correct page but instead a cached version is used (that is wrong).
What version of the product are you using? On what operating system? Using r39 . Please provide any additional information below. The problem is in WizardContainer in next method, a todo said it:
///TODO [dpd] this won't work with multiple paths
WizardPage nextPage = null;
if (_visitedPath.isEmpty()) {
nextPage = _factory.createPage(getPath(), getSettings());
} else {
nextPage = _visitedPath.remove(0);
}
I think that the cached version must only be show when settings aren't modified.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=13
JCenter is going away as of May 1st, 2021.
So, the question is, do we move to:
love the library by the way! found it through stack overflow
On the demo screen shot, there is a left hand side vertical tree like menu. Is there a demo or example on how to display this?
From the context of a wizard page, is there a way to advanced to the next wizard page?
We need more complete documentation, including more sample code.
Do you know if it is possible to automate that when we have new commits and travis is ok with them then it is published automatically on JCenter (Bintray)?
Not sure what happened but all 3 demo's start up, then exit immediately after pressing the next button.
We need actual documentation.
This is something I'm going to work on. I'm opening an issue so I can track my progress.
Issue #38 revealed how bad our current testing is. One thing we could do to help is to build a minimal sample project (adapting the quickstart?) and put it in the repo (perhaps in a samples
directory).
Ideally, that would be built and run, using the latest version in target, before each deploy. I expect that that will require some interesting scripting / maven magic to happen in a nice seamless way, but even if it's manual that'd be a start.
If anyone has a simple sample that they'd be willing to share, please let me know!
The Travis CI have a warning (show bellow) telling that we haven't specified the version of maven-source-plugin. What version we used so we can fix it?
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.github.cjwizard:cjwizard:jar:1.0.0
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-source-plugin is missing. @ line 64, column 15
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
From [email protected] on January 29, 2013 20:18:27
How does one go about providing different localizations for the UI elements created by CJWizard (which is probably just the buttons)? Issue #9 might be related.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=10
perhaps my understanding of it's function is, but I was under the impression that WizardSettings would contain the values of the data entered by the user. It looks like it's more for managing what wizard page to show next, however the test class seems to indicate otherwise.
From [email protected] on June 10, 2011 10:51:35
It seems to be called only if the user presses next. Shouldn't it also be called when the user presses finish?
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=8
Hi everybody,
recently, there were a couple of issues and pull requests from @spyhunter99...
@stevesobol mentioned, that he took over the project from @creswick (#49).
That's good news for cjwizard :-)
Technically, I supported the project last year a little bit (https://github.com/cjwizard/cjwizard/releases) and helped to make it available via Bintray (https://bintray.com/cjwizard). I have also the necessary "permissions" for managing the organization in Github as well as in Bintray.
Personally, I don't use cjwizard at the moment, so I'm not that much interested in it right now.
Enough of the introduction...
-> Who would like to maintain the project?
I could help with the transition...
Best regards,
Peti
Consider making this project available from a Maven repo.
The introduction of the page at https://github.com/cjwizard/cjwizard/blob/master/src/site/markdown/quickstart.md
contains a link to
https://github.com/cjwizard/cjwizard/blob/master/src/site/src/main/java/com/github/cjwizard/WizardTest.java
which is 404.
I guess it should be changed to
https://github.com/cjwizard/cjwizard/blob/master/cjwizard-demo/src/main/java/com/github/cjwizard/demo/WizardTest.java
Thanks for the nice project btw :-)
Now, we have a rollBack() methos in WizardSettings interface.
I think that we can also have a commit() method. For example if a page have an action that must be done only once, when you have done it you add a new settings value and commit the changes so although he goes back immediately after the action have been done and then forward again, you can know that the action is already done.
Is this a good idea?
The maven dependency snippet in the readme doesn't seem to work for me.
<dependency>
<groupId>com.github.cjwizard</groupId>
<artifactId>cjwizard</artifactId>
<version>x.y.z</version>
<type>pom</type>
</dependency>
The snippet matches the snippet that is provided in the bintray link
In order for my project to actually download the classes, I needed to remove the <type>pom</type>
tag. After that the jars were downloaded correctly and I was able to use the classes.
.entrySet()
and .values()
, making the whole thing unsafe to use with the code that expects a proper Map
(e.g. to save the resulting settings into a file). Is there a reason why it's implemented this way? There's an issue (#46) about it, but I don't quite get why it was closed. Unless, indeed, StackWizardSettings
should only be used for controlling the wizard flow, and not for accumulating the resulting settings. Which doesn't seem to be the case, since the data from the named components winds up inside it..keySet()
is not backed by the StackWizardSettings
object, which contradicts the Map
documentation:
The set is backed by the map, so changes to the map are reflected in the set, and vice-versa.
remove
method), they still break the contract!It seems to me that the WizardSettings
interface shouldn't extends Map
at all, and should instead provide a way to get a Map
that would be either a snapshot of, or backed by, the current stack item, as well as a way to get an effective Map
snapshot for the whole stack.
From [email protected] on February 17, 2011 03:12:39
By default the wizard does not add a taskbar item.
It should though IMO.
At least there should be an option to do so.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=5
From [email protected] on June 16, 2011 17:41:58
In order to add accelerators and such to the 4 buttons in a WizardContainer (Finish, Cancel, Previous and Next), or to contextually change their text, I had to traverse the Swing container hierarchy and match them by finding JButton's whose actions have the right names. This is less than optimal.
It would be wondrously useful to have accessors for the buttons, such as getNextButton(), etc. And it wouldn't be very hard.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=9
We have:
setPrevEnabled(boolean);
setNextEnabled(boolean);
setFinishEnabled(boolean);
Is it a good idea to add setCancelEnabled?
Some process can't be cancelled when they start, so a page may disable all buttons until it finish this not-to-be-cancel process. It isn't a good practice to have a process that can't be cancelled, but sometimes you can't avoid it, so it is needed.
@PhoneixS @mperrando @spyhunter99
We have a new Slack channel available at cjwizard-users.slack.com.
I've ran into an issue where I have a Panel that extends WizardPanel that is too tall for displaying on the screen. I'm not a swing expert and i'm not too sure how to proceed. I was thinking i wrap my panel in a scroll view but i'm not sure if there's an easier solution that could be incorporated into the library. Thoughts on this?
Good morning @creswick,
the german < Zurück
(English: < Prev
) shows up as < Zurück
in my application.
I guess this is because the properties files are stored using UTF-8 (dev-time) and read using ISO-8859-1 (runtime), like described in http://stackoverflow.com/q/4659929/1662412.
Best regards,
Peti
From [email protected] on March 21, 2011 09:07:54
Hi there,
I just found this project. I've used http://wizard.dev.java.net before, but I don't like the NetBeans-style UI, and at any rate, Oracle has rendered java.net completely unusable...
cjwizard is simple. I like that.
I'd like to help with this project. The concept is great, the implementation seems quite good, and I don't want to see this tool stagnate like so many other worthwhile development tools have.
If you'd like my help, please email me. [email protected]
Thanks :)
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=6
We need to make sure we are supporting Java 9 and 10. Oracle has 10.0.1 out now, and it can be downloaded using this link, while the OpenJDK 10.0.1 download can be found here.
It may be as simple as adding the proper keywords to travis.yml
and letting Travis successfully build the project. Actually, it SHOULD be that simple. We are constrained, at the moment, by the fact that Travis CI support for Java 10 isn't quite ready for prime-time. And I've had no specific requests to support 9 OR 10 yet, so I'm going to hold off on making any changes for now. But hopefully we'll be able to get this done soon
A custom PageTemplate that add a list of pages on the left is show in the Readme.md. Can you share it?
It is a very nice template and could be very useful to the users of cjwizard.
Would it be helpful to detect when a particular page has been made visible to the user
some java.util.logging sneaked in there (probably me). also have a new idea for a new demo, working on both now
@creswick , in the README.md is http://cjwizard.googlecode.com/files/cjwizard1.png referenced.
However, that file doesn't exist any more (googlecode is gone). Do you have it somewhere?
Best regards,
Peti
From [email protected] on January 11, 2011 16:37:09
I can not programmatically move to the next page. Why is _controller private, and not protected in WizardPage?
Being protected it would allow further accessing the controller functions from a wizard page (inheriting WizardPage).
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=4
From [email protected] on July 14, 2008 09:56:55
The WizardController API doesn't expose any means of changing the page
title as displayed in the PageTemplate, or on any surrounding "chrome" (for
example, on the dialog window border.)
One solution is to add a titleChanged(String newTitle)
event to the
!WizardListener interface, and a setTitle(String title)
method on the
!WizardController. I think that this method would then be fired before or
after the pageChanged(...)
listener event, but I'm not sure which --
probably after, so the UI changes take effect later than any
post-processing of the !WizardPage and !WizardSettings that the associated
!WizardListeners need to perform.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=2
From [email protected] on March 24, 2013 23:00:10
I have a screen with a couple of JToggleButton that decide what the next step will be. Instead of pressing one of them and then "Next", I'd like to go to the next page directly when those buttons have been clicked.
How can I programmatically trigger "Next" or "Finish"? Issue #9 might be related.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=11
Obviously, fixing this is very high priority: https://travis-ci.org/cjwizard/cjwizard/jobs/239124045
Not sure if this exists already but it would be super useful to trap the events for next and previous and the ability to cancel said action.
use case
user clicks next
app prompts "are you sure you want to do that" yes/no jdialog
APageFactory
implements the PageFactory
interface, but the class name doesn't reflect that fact.
A suggestion, separate the demo classes into a separate module instead of embedding them in the main library. I can open a PR for this
From [email protected] on October 09, 2013 03:52:12
It could be very good to have the repository of code in a Distributed Source Control so other people can collaborate more easily in the project.
You have many alternatives and Google Code admit Mercurial and Git. Both are very good (my personal preference is mercurial).
If you put your code under DSC, external developers can make more changes, committing this changes into it's own local repository and when the functionality is finished try to push on your Google code repository or in another "test" repository so you can revise the changes. And finally this can other people more happy to help developing this fantastic library.
Original issue: http://code.google.com/p/cjwizard/issues/detail?id=12
There was a sun set of Bintray https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/
Gradle can't download dependencies from https://bintray.com/cjwizard/CJWizard/cjwizard.
Can you upload dependencies to other maven repository?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.