Summer of Code 2006

Hi all,

The wxWidgets project has been accepted as a mentoring organization for the Google Summer of Code 2006. I'm putting together a list of project ideas for XRCed and wxPython, and will be putting them at http://www.wxwidgets.org/wiki/index.php/Development:_Student_Projects along with the wxWidgets project ideas. If you have other project ideas you would like to float past me then let's discuss them on the wxPython-dev list.

If anybody here has full or part-time student status and would like to have some fun this summer hacking on some code and being mentored by me or one of the other wx-dev's then I encourage you to apply. See http://code.google.com/soc/studentfaq.html

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Hey you,

Just wondering, what do you feel about a Qt implementation of wxWidgets? I
understand that those that develop proprietary programs would have to pay
Trolltech if they want to be able to use it, but it'd have a lot of
advantages for KDE users, like myself, that use some free soft wxWidgets
application.
Also, Qt is available for a few more plataforms than wxWidgets, like some
portable devices. I also read that the MacOSX has some problems; those users
could use the Qt implementation if it worked better.

So, what do you feel about a proposal for a wxWidgets implementation in Qt?

Also, do participants need to have made publically available wxWidgets
applications?
Because I've worked quite a bit in wxWidgets, but in an application that I
can't ask to be publicaly released right now. I do have some C++ games that
show that I'm knowledge of the language.
I also feel that demanding much experience goes against the spirit of Summer
of Code that is to introduce students to free software development. As a 2nd
year university student, I've already played my share with free soft
application and libraries, but never really contributed much (just a couple
of patches and a few translation work here and there). Having a mentor would
give me the right means to feel more confortable with the open source
development.
However, even though I've a lot of work to do in college, I could do some
work that you ask to, to show that I'm a good programmer.

Sorry for developing the text so much. Please answer my two questions.

Cheers,
Ricardo

···

Em Quinta, 20 de Abril de 2006 06:00, o Robin Dunn escreveu:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

If anybody here has full or part-time student status and would like to
have some fun this summer hacking on some code and being mentored by me
or one of the other wx-dev's then I encourage you to apply. See
http://code.google.com/soc/studentfaq.html

--
Only adults have difficulty with childproof caps.

There were looots of discussions about it in the past. Please search wx-dev
mailing list archives.

Regards,
Nerijus

···

On Thu, 20 Apr 2006 15:04:49 +0100 Ricardo Cruz <rpmcruz@clix.pt> wrote:

Just wondering, what do you feel about a Qt implementation of wxWidgets?

Ricardo Cruz wrote:

Hey you,

Just wondering, what do you feel about a Qt implementation of wxWidgets? I understand that those that develop proprietary programs would have to pay Trolltech if they want to be able to use it, but it'd have a lot of advantages for KDE users, like myself, that use some free soft wxWidgets application.
Also, Qt is available for a few more plataforms than wxWidgets, like some portable devices. I also read that the MacOSX has some problems; those users could use the Qt implementation if it worked better.

So, what do you feel about a proposal for a wxWidgets implementation in Qt?

Personally I would love to have a Qt port, but as has been mentioned it has been discussed and the general consensus was that there is license conflicts or something.

Also, do participants need to have made publically available wxWidgets applications?

No. Obviously having familiarity with wxWidgets would be a bonus, it is not required for this program. Even if it was required I don't think that we would require code samples anyway.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

What about a pdf viewer for GTK port using the poppler library? It
doesn't seems to be very hard.

I've wrote some test code(c++) in the past. What I've done was to let
the poppler parse the pdf document, than use the result Bitmap, and
display it using wxImage. I don't know if it's the best approach but was
quick and easy.

Ricardo

···

On Wed, 2006-04-19 at 22:00 -0700, Robin Dunn wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

Ricardo Pedroso wrote:

What about a pdf viewer for GTK port using the poppler library? It
doesn't seems to be very hard.

+1

···

--
Paul McNett
http://paulmcnett.com
http://dabodev.com

Ricardo Pedroso wrote:

···

On Wed, 2006-04-19 at 22:00 -0700, Robin Dunn wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for the Google Summer of Code 2006. I'm putting together a list of project ideas for XRCed and wxPython, and will be putting them at Student Project Ideas - wxWidgets along with the wxWidgets project ideas. If you have other project ideas you would like to float past me then let's discuss them on the wxPython-dev list.

What about a pdf viewer for GTK port using the poppler library? It
doesn't seems to be very hard.

A cross-platform solution would be best of course, but this would be a very nice start.

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Given the recurring problems folks report here with the use of sizers, it might be useful to have a demo or two focused specifically on that. I'm thinking of a panel containing a variety of windows laid out by sizers, and another where the user can change parameters of the various windows, sizer items, and sizers to see their effects. (I've learned a lot by playing with XRCed, which supports this kind of thing to a certain extent.)

It'd also be useful to have an output window showing the sequence of event firings as the sizers do their jobs.

···

--
Don Dwiggins
Advanced Publishing Technology

Don Dwiggins wrote:

Given the recurring problems folks report here with the use of sizers, it might be useful to have a demo or two focused specifically on that. I'm thinking of a panel containing a variety of windows laid out by sizers, and another where the user can change parameters of the various windows, sizer items, and sizers to see their effects. (I've learned a lot by playing with XRCed, which supports this kind of thing to a certain extent.)

It'd also be useful to have an output window showing the sequence of event firings as the sizers do their jobs.

I'd be happy if there were just a way to have the sizers outline themselves with a dashed line or something. Just anything so I could see which sizer is misbehaving.

Michael

Michael Hipp wrote:

Don Dwiggins wrote:

Given the recurring problems folks report here with the use of sizers,
it might be useful to have a demo or two focused specifically on that.
I'm thinking of a panel containing a variety of windows laid out by
sizers, and another where the user can change parameters of the
various windows, sizer items, and sizers to see their effects. (I've
learned a lot by playing with XRCed, which supports this kind of thing
to a certain extent.)

It'd also be useful to have an output window showing the sequence of
event firings as the sizers do their jobs.

I'd be happy if there were just a way to have the sizers outline
themselves with a dashed line or something. Just anything so I could see
which sizer is misbehaving.

I've had good luck with replacing BoxSizers with StaticBoxSizers. For
other sizers you can nest them in StaticBoxSizers, but that gets complex.

Joe

FWIW, that's a standard feature in Dabo (along with several demos of sizer behavior). Here's the method of the dSizerMixin class that does the drawing; it uses some Dabo properties, but it should be clear enough what is going on:

def drawOutline(self, win, recurse=False):
  """ There are some cases where being able to see the sizer
  is helpful, such as at design time. This method can be called
  to see the outline; it needs to be called whenever the containing
  window is resized or repainted.
  """
  if self.Orientation == "Vertical":
    self.outlineColor = wx.BLUE
  else:
    self.outlineColor = wx.RED
  x, y = self.GetPosition()
  w, h = self.GetSize()
  # Offset
  off = 0
  # Pen Width
  pw = 1
  if self.Application.Platform == "Win":
    # Make 'em a bit wider.
    pw = 3
  
  dc = wx.ClientDC(win)
  dc.SetPen(wx.Pen(self.outlineColor, pw, wx.SHORT_DASH))
  dc.SetBrush(wx.TRANSPARENT_BRUSH)
  dc.SetLogicalFunction(wx.COPY)
  # Draw the outline
  dabo.ui.callAfter(dc.DrawRectangle, x+off, y+off, w-(2*off), h-(2*off) )
  
  if recurse:
    for ch in self.GetChildren():
      if ch.IsSizer():
        sz = ch.GetSizer()
        if hasattr(sz, "drawOutline"):
          sz.drawOutline(win, recurse)
      elif ch.IsWindow():
        w = ch.GetWindow()
        if isinstance(w, dabo.ui.dPageFrame):
          w = w.SelectedPage
        if hasattr(w, "Sizer") and w.Sizer:
          w.Sizer.drawOutline(w, True)

-- Ed Leafe
-- http://leafe.com
-- http://dabodev.com

···

On Apr 21, 2006, at 5:50 PM, Michael Hipp wrote:

I'd be happy if there were just a way to have the sizers outline themselves with a dashed line or something. Just anything so I could see which sizer is misbehaving.

Michael Hipp wrote:

I'd be happy if there were just a way to have the sizers outline themselves with a dashed line or something. Just anything so I could see which sizer is misbehaving.

Spend some time playing with XRCed. Among other things, it highlights the boundaries of selected windows.

···

--
Don Dwiggins
Advanced Publishing Technology

Michael Hipp wrote:

Don Dwiggins wrote:

Given the recurring problems folks report here with the use of sizers, it might be useful to have a demo or two focused specifically on that. I'm thinking of a panel containing a variety of windows laid out by sizers, and another where the user can change parameters of the various windows, sizer items, and sizers to see their effects. (I've learned a lot by playing with XRCed, which supports this kind of thing to a certain extent.)

It'd also be useful to have an output window showing the sequence of event firings as the sizers do their jobs.

I'd be happy if there were just a way to have the sizers outline themselves with a dashed line or something. Just anything so I could see which sizer is misbehaving.

Starting in 2.7 you'll be able to Ctrl-Alt-Shift-MiddleClick and it will draw the sizer and item boundaries for the window you click on and its children.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Robin Dunn wrote:

Starting in 2.7 you'll be able to Ctrl-Alt-Shift-MiddleClick and it will draw the sizer and item boundaries for the window you click on and its children.

Wow, I dub that "the four-middle-finger salute". :wink:

···

--
Paul McNett
http://paulmcnett.com
http://dabodev.com

Hi Robin,

Michael Hipp wrote:

Don Dwiggins wrote:

Given the recurring problems folks report here with the use of sizers, it might be useful to have a demo or two focused specifically on that. I'm thinking of a panel containing a variety of windows laid out by sizers, and another where the user can change parameters of the various windows, sizer items, and sizers to see their effects. (I've learned a lot by playing with XRCed, which supports this kind of thing to a certain extent.)

It'd also be useful to have an output window showing the sequence of event firings as the sizers do their jobs.

I'd be happy if there were just a way to have the sizers outline themselves with a dashed line or something. Just anything so I could see which sizer is misbehaving.

Starting in 2.7 you'll be able to Ctrl-Alt-Shift-MiddleClick and it will draw the sizer and item boundaries for the window you click on and its children.

Wow, that's pretty cool, I didn't realize that! Although I do wonder if it's good to have this managed (only) by a keyboard shortcut. If it's accessible from wxPython, I would assume it's always available to wxPython apps, even in deployed apps?

If that's the case, what about having some sort of accessor function for this (Sizer.SetDebugMode(True)?) so that developers can assign whatever keyboard shortcut they like to initiate it, and also do things like only make this accessible when the app is being debugged? (e.g. setting a debug mode for their app, etc.) Although it's a pretty sophisticated accessor, it's still possible it could be triggered by someone, or a combination of someone and their stuck keyboard/baby/cat, which would cause the app to become really freaky. :wink:

(Please note that the 'stuck' above only modifies keyboard and not all three. :wink:

BTW, Robin, should I be directing this question to you or is this more of a thing for wx-dev?

Thanks,

Kevin

···

On Apr 21, 2006, at 3:11 PM, Robin Dunn wrote:

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

---------------------------------------------------------------------
To unsubscribe, e-mail: wxPython-users-unsubscribe@lists.wxwidgets.org
For additional commands, e-mail: wxPython-users-help@lists.wxwidgets.org

Kevin Ollivier wrote:

Starting in 2.7 you'll be able to Ctrl-Alt-Shift-MiddleClick and it will draw the sizer and item boundaries for the window you click on and its children.

Wow, that's pretty cool, I didn't realize that! Although I do wonder if it's good to have this managed (only) by a keyboard shortcut. If it's accessible from wxPython, I would assume it's always available to wxPython apps, even in deployed apps?

Yes and no. It's available in apps that have __WXDEBUG__ defined, which is true for my binary releases of wxPython, but not for most of the linux distros that build wxPython with their own package spec files (because they want to have it use the stock wxGTK package which will be a full release build without __WXDEBUG__set.)

You can see the code that implements this in wincmn.cpp in the wxWindowBase::OnMiddleClick method.

If that's the case, what about having some sort of accessor function for this (Sizer.SetDebugMode(True)?) so that developers can assign whatever keyboard shortcut they like to initiate it, and also do things like only make this accessible when the app is being debugged? (e.g. setting a debug mode for their app, etc.) Although it's a pretty sophisticated accessor, it's still possible it could be triggered by someone, or a combination of someone and their stuck keyboard/baby/cat, which would cause the app to become really freaky. :wink:

It won't stay that way however. The borders are just drawn with a wxClientDC and so as soon as there is a refresh the lines are cleared away.

(Please note that the 'stuck' above only modifies keyboard and not all three. :wink:

BTW, Robin, should I be directing this question to you or is this more of a thing for wx-dev?

Probably wx-dev. I think this is something that that Vadim added.

···

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

There has been some talk on the pyxIDEs mailing list about the summer
of code too.

I suggest creating a simple, extendible editor starting with the one
in the Demo.

There should be some minimal code added to the STC widget to implement
some kind of a command processor and then implemented a bunch of
commands using the STC API.

Peter

···

On 4/20/06, Robin Dunn <robin@alldunn.com> wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

I didn't get an answer from my submitted patch of a "Py" Plugin system yet.
I think, Py or Pycrust has the best conditions for becoming
an event better "IDLE" with that.
Maybe this could be a project idea for that, if (my) current solution
doesn't fit.
If nobody takes interest, we can drop it of course, and I personally
extend Pycrust for myself.

There is also the point:
"Enhance the wxPython demo to be an even more informative and useful learning tool."

What could be even improved? :slight_smile:

For example:
The ListCtrl demo is rather complex (also with the uses of Mixin classes).
There could be a simple, basic ListCtrl demo additionally.

···

On Thu, 20 Apr 2006 08:22:19 +0300, "Peter Damoc" <pdamoc@gmail.com> wrote:

On 4/20/06, Robin Dunn <robin@alldunn.com> wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

--
Franz Steinhaeusler

Peter Damoc wrote:

···

On 4/20/06, Robin Dunn <robin@alldunn.com> wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

There has been some talk on the pyxIDEs mailing list about the summer
of code too.

I suggest creating a simple, extendible editor starting with the one
in the Demo.

There should be some minimal code added to the STC widget to implement
some kind of a command processor and then implemented a bunch of
commands using the STC API.

I've added an item.

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!

Franz Steinhaeusler wrote:

Hi all,

The wxWidgets project has been accepted as a mentoring organization for
the Google Summer of Code 2006. I'm putting together a list of project
ideas for XRCed and wxPython, and will be putting them at
Student Project Ideas - wxWidgets
along with the wxWidgets project ideas. If you have other project ideas
you would like to float past me then let's discuss them on the
wxPython-dev list.

I didn't get an answer from my submitted patch of a "Py" Plugin system yet.

It's still on my ToDo list.

I think, Py or Pycrust has the best conditions for becoming
an event better "IDLE" with that.
Maybe this could be a project idea for that, if (my) current solution
doesn't fit.
If nobody takes interest, we can drop it of course, and I personally
extend Pycrust for myself.

There is also the point:
"Enhance the wxPython demo to be an even more informative and useful learning tool."

What could be even improved? :slight_smile:

I was thinking of things like adding better comments in the samples, making some usability improvements, (like being able to edit the code and see the effects in the demo side-by-side instead of needing to switch notebook pages back and forth) perhaps some built-in tutorial mode that leads the newbie by the hand through creating some simple applications.

For example:
The ListCtrl demo is rather complex (also with the uses of Mixin classes).
There could be a simple, basic ListCtrl demo additionally.

Yes, additional samples are always nice.

···

On Thu, 20 Apr 2006 08:22:19 +0300, "Peter Damoc" <pdamoc@gmail.com> wrote:

On 4/20/06, Robin Dunn <robin@alldunn.com> wrote:

--
Robin Dunn
Software Craftsman
http://wxPython.org Java give you jitters? Relax with wxPython!