It is currently Wed Mar 22, 2017 7:12 pm

Welcome to rfobasic

You are currently viewing our boards as a guest, which gives you limited access to view most discussions and access our other features. By joining our free community, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content, and access many other special features. In addition, registered members also see less advertisements. Registration is fast, simple, and absolutely free, so please, join our community today. **You are not required to provide truthful information to any registration questions. Be whomever you wish to be.!

Post new topic Reply to topic  [ 129 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13  Next
Author Message
 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Wed May 29, 2013 11:05 am 

Joined: Tue Aug 02, 2011 10:21 am
Posts: 220
I will add a flag to indicate whether the virtual keyboard is hidden or not. Needs to be a function call:
as any flags within keyboard routine may not be visible in calling program.
Getvkeystate just executes the command:
BUNDLE.GET 1,"vkeyb",state
(state=1 if visible). This command could also be used in calling program.
This flag is set assuming a virtual keyboard is always in use which will not be true if an external keyboard is being used. Is this a problem?
I will try and release a new version of the Graphic Controls in the next week or so.

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Wed May 29, 2013 1:11 pm 
User avatar

Joined: Mon Oct 17, 2011 9:34 am
Posts: 891
If you trap the backkey with onbackkey consider that when the keyboard is visible the backkey press
hides keyboard but is not captured by onbackkey. The user must press backkey again. This last one
is captured and you may kb.hide keyboard and after this show it up again.
This first backkey press not captured by basic when keyboard is visible is an on purpose
change in an older version, with which i never agreed... :mrgreen:

Check out my RFO Basic! apps & games: Image, on Google Play Store! Slide me!, Amazon, or AppsLib!

 Post subject: Graphic Controls Generator/Handler v1.10
Unread postPosted: Sun Jun 30, 2013 3:00 am 

Joined: Tue Aug 02, 2011 10:21 am
Posts: 220
It took a bit longer than I thought (can't stop tweeking things).

Just uploaded a new version (v1.10) of the GraphicControls.bas.

As usual let me know if you find any 'features' that should not be
there or you have any suggestions for future releases.

v1.10 Changes
* Bug Fix - SetScalingFactor function reworked in an attempt to handle
scaling rotated designs.
* Bug Fix - ListBox "ListView" column widths should now resize correctly
using scaling factor.
* Bug Fix - Combobox drop down list text not drawing correctly if text
alignment not set to left when dropdown list is drawn.
* Bug Fix - Listbox Functions addlistrow, updatelistrow and
deletelistrow were not handling rows correctly when they had the
style "Icon".
* Bug Fix - Listbox Multiline routine not splitting text string
correctly. Code rewritten.
* Changed "_" character used to indicate internal Graphic Control
functions to "@" as "_" seems to interfere with the Basic! Format
* Changed Checkbox handling on a Listbox control. If a checkbox value
is changed, a control value of the Listbox Control Number plus 3000
will be returned to the calling program.
ie: SW.CASE lstControl <- Row Data Clicked
SW.CASE lstControl+3000 <- Row Checkbox Value Changed
* Changed handling of Icons in Listbox control. They are no longer
resized to fit, they are just drawn at their actual size. This was
done quicken up Listbox redrawing. Sizing can be easily re-instated
if required.
Icons used in sample programs were all re-sized, if requird, prior
to being used by the programs. Icon size normally used 16x16 pixels,
* Changed use of graphic text input routine from an internal subroutine
to a user API. Note that this is sub-routine call and not a function
inpheader$="Heading Text"
inptext$="Intial Text Value"
GOSUB KeyRoutine
IF inptext$<>"" THEN % inptext$ contains returned input value.
KeyRoutine returns inptext$ set to 'bcCOLBREAK$' character if Cancel
Button pressed.
* Changed caption handling for a ListBox. If caption is empty the
Listbox Heading box is no longer drawn. If used on a MultiLine
Listbox the full area of the listbox control can be used to display
formated text.
* Changed in an attempt to speeds things up:
(1) Changed Colour Constants. Display Colours unchanged but they are
now referenced using new colour constants values in range 1 to
16. All RGB values now calculated once at start of program rather
than every time a colour was used.
Old SetColor function still there if required but is no longer
used within the Graphic Controls routines (all calls replaced by
inline code).
If required the display colours can be adjusted by altering the
RGB values defined in the GraphicConstants.bas file.
(2) GetID$ function removed and all calls replaced by inline code.
* Added additional formating commands for use with MultiLine Listboxes.
Text formating changes will continue to be used in all following rows
unless changed by another formating command. Mutiple formatting
commands can used.
Commands must now be placed at the start of a row's data either
before or after any "List" commands (if present).
<N> - Resets all attributes to default values (ie: Bold, Italic and
Underline Off, left justify, Listbox Font size and Listbox
Data Text colour).
<B> - Row Text will be drawn using Bold attribute.
<I> - Row Text will be drawn using Italic attribute.
<U> - Row Text will be drawn using Underlined attribute.
<0> - Row Text will be drawn using the Listbox's Font Size.
<2> - Row Text will be drawn using the Listbox's Font Size plus 2.
<4> - Row Text will be drawn using the Listbox's Font Size plus 4.
<6> - Row Text will be drawn using the Listbox's Font Size plus 6.
<L> - Row Text will be drawn Left aligned.
<C> - Row Text will be drawn Centred.
<R> - Row Text will be drawn Right aligned.
<c> - Row Text will be drawn in specified text Colour "c" where "c"
can be set to anyone of the following values:
"d"(Black), "b"(Blue), "g"(Green), "c"(Cyan), "r"(Red),
"m"(Magenta), "y"(Yellow), "a"(Gray) or "t" (default data text
colour specified in AddControl command for Listbox).
<-> - Not a Text attribute. Causes a complete row of hyphens to be
drawn. If command "<->" is not followed by a new line
character, one will be inserted.
Notes: (1) The Font Size formating commands may produce overlapping
rows depending on the specified row height for the
(2) Formating changes are applied to the complete row of
text. It is not possible to change the format of just
part of a row's text.
See "Help" option on Expenses Tracker program for an example of a
formatted Multiline Listbox.
* Added new user function "FN.DEF string$(cnt,i$)", Returns a string
value consisting of the value i$ repeated cnt times. i$ can be one or
more characters.
* Added new user function "FN.DEF getvkeybstate()". Returns visability
state of virtual keyboard (1=visible, 0=Hidden).
* Added new user function "FN.DEF getGCVer$()". Returns version number
of the GraphicsControl.bas.
* Added new user function "FN.DEF SetCommonStyles(Styles$)". Parameter
'Styles$' can either be empty ("") or consist of one or more control
styles concatenated together (eg: bcNOBORDERS$+bcHIDEGRID$ or "-g").
Style parameter will be applied to all controls as they are added to
a form.
See "Options" on Expenses Tracker sample program for an example of how
function may be used.
* Add new style 'bcNOSORT$="n"' style for Select and ComboBox controls.
The default is to re-sort the values for these controls whenever a
new value is added. Setting this style suppresses the sort.

Sample Programs:
* Reworked Calculator.bas sample program to work with latest Basic! and
* Reworked FoodManager.bas sample program to work with latest Basic!
and GraphicControls.bas.
- Removed icon usage in various places in order to speed up screeen
update time.
- Enlarged controls on Shopping screen to make it easier to use when
- Changed 'gr.get.pixel' to 'gr.get.bmpixel' and quickened up Maintain
Categories processing.
- Updated 'FMHelp.txt' and 'FMConvert.txt' files in the FoodManagerData
* Reworked Expences.bas sample program to work with latest Basic!
and GraphicControls.bas.
- Renamed program to ExpensesTracker.bas.
- There are now two types of accounts, the original "Group Share"
account plus a new "Expenses" account. The new "Expenses" account
can typically be used to track expenses on a business where only
two parties are involved, the person spending the expenses and the
"person" who will re-embuse the spent amount.
- Uses two new support files 'ExpensesHelp.txt' and 'FormatingHelp.txt'
which the expects to find in the Basic! Data folder.
- As this version uses new database tables, it will not work with
databases created by previous versions of the program. They will
need to be deleted before installing this new version.
See "Help" (menu option on first screen) for brief introduction.

(1) Sample program now have code to block the use of the Back Key
so they should be closed using the provided exit options.
(2) Attempted to code the correct program closing command ('END' for
a Basic! run and 'EXIT' for an APK run.
(3) APK versions of the sample programs have not been rebuild at the
moment as (apart from lack of time) I've not kept up to date on
how to use the latest version of APK building tools. When I have
some spare time I will need to do some re-learning.
(4) The User guide has not been updated (yet). Awaiting installation
of new version of the program I use to create PDFs (PagePlus X7).

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Sat Aug 03, 2013 4:06 pm 

Joined: Thu May 30, 2013 11:56 am
Posts: 18
I'm new to programming. please can anyone help me with a beginner's tutorial on this tool?

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Sun Aug 04, 2013 12:43 am 

Joined: Sat Jun 04, 2011 2:29 pm
Posts: 184

Mr musa....
No tutorial here. You make your test :-(.
The page 7 you have a good example.

I not used translator to write here. I speak spanish.
Nice day.

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Sun Aug 04, 2013 1:10 am 

Joined: Sat Jun 04, 2011 2:29 pm
Posts: 184
Hi again.

Learn always is hard, always.
You can make a simple menu program,
a simple degree converter C to F. Then
Combine or merge menu and converter.

The process is step by step. Don't copy and
paste code. Write a code, and test to see how run
the code

Make a circle, make a line diagonal, merge circle
and line.

If you don't understand something, ask here in
the forum, many good people will help you.

I write from my brain, is very small. :-)

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Sun Aug 04, 2013 3:41 am 

Joined: Tue Aug 02, 2011 10:21 am
Posts: 220
As suggested by the previous posts, I think the best way to learn how to use the
Graphic Controls package is to first view the various sample programs to see how
they work and then start playing around changing things and seeing what effect
the changes make,

Brief Introduction.

The Graphic Controls include can be used to create and control multiple forms,
each of which can be made up of any number of controls. Each form will use the
same steps in order to be created and processed:
1. Call the StartNewForm function.
2. Define all the controls required on the form.
3. Call the DrawForm function to draw the form onto the screen.
4. Call the TouchCheck routine and wait for changes to be made to the form's
Data values.
5. If a control's Data value is changed do any additional processing required.
6. Goto step 4 and wait for the next data change.
7. When required either goto to a step 1 of the next form or close program. As only
one form exists at a time, forms are always created even if they have
been previously used.

The manual supplied with the package contains full details of the controls,
functions and their parameters available within the Graphic Controls package
(I know it's not quite up to date (see latest release note(s) for updates/changes)
but it's a start).

The following is a recommented version of the Temperature Converter Sample
code. It does not do much, not much more than the standard "Hello World"
program but it does show the basic steps used in constructing a progam
using the Graphic Controls package,

REM Temperature Converter v1.0

INCLUDE GraphicConstants.bas                                                 % Note 1
INCLUDE GraphicControls.bas                                                  % Note 2

rc=InitGraphics(bcOPAQUE,bcLGRAY,bcLANDSCAPE,bcHIDESTATUSBAR,"GCClick.ogg")  % Note 3

rc=StartNewForm(DateSize,bcSOUNDON$,1,MsgBoxFontSize,bcLGRAY)                % Note 4

fraTemp=AddControl(bcFRMFRAME,"Temperature Converter", ~
    bcYELLOW,bcBLUE,bcRED,bcLBLUE, ~
    100,0,0,420,340,36, ~
txtCentigrade=AddControl(bcFRMSTRING,"Temp (C) :", ~
    200,0,160,260,50,30, ~
    bcCTRLCENTRE$+bcALIGNDATCENTRE$)                                         % Note 6
dspFarenheit=AddControl(bcFRMDISPLAY,"Temp (F) :", ~
    280,0,160,260,50,30, ~
    bcCTRLCENTRE$+bcNOBORDER$+bcALIGNDATCENTRE$)                             % Note 7
cmdClose=AddControl(bcFRMBUTTON,"Close", ~
    bcBLACK,bcLGREEN,0,0, ~
    360,0,0,120,50,26, ~
    bcCTRLCENTRE$)                                                           % Note 8

rc=SetCtrlData(txtCentigrade,"0")                                            % Note 9
rc=SetCtrlData(dspFarenheit,"32")                                            % Note 10

rc=DrawForm("","")                                                           % Note 11

selCtrl=TouchCheck(0,0,0)                                                    % Note 12
SW.BEGIN selCtrl
  SW.CASE txtCentigrade                                                      % Note 13
     FTemp$=REPLACE$(FORMAT$("##%",((VAL(Cent$)*9)/5)+32)," ","")
  SW.CASE cmdClose                                                           % Note 14
     GOTO CloseTemp
GOTO WaitForTouch

CloseTemp:                                                                   % Note 15

Program Notes:
1 - GraphicConstants.bas contains definitions of all the data values
(e.g.: Control Styles, Colours, etc) used by the Graphic Controls.

2 - GraphicsControls,bas contain the actual graphic controls routines.

3 - Initialises the graphics screen setting transparency to opaque, background
colour to Light Gray, orientation to Landscape, hides the Status Bar (only
works on some devices) and names the Sound File to be played when a control
is clicked (can be an empty string, in which case a default Tone will be

4 - Starts a new form. If required, all control definitions and data used by
the previous form will be cleared out and then the various data stores will
be initalised ready to store the form's control definitions and data.
The Datesize and MsgBoxFontSize parameters are used to set the size of the
Calendar and MsgBox controls, neither of which are used in this program.
The bcSOUNDON$ set the sound on so any clicks on controls will cause either
a beep or a Sound File to be played. The third parameter ("1") is the form
Scaling Parameter which can be used to resize all the form controls so they
fit the device the program is being run on. As no sizing is required here
the value of 1 is used. The bcLGRAY parameter sets the background colour of
this new form to Light Gray.

5 - Defines a Frame control, horizontally centered on the screen with a 3D
border and a centered Caption "Temperature Converter" in Bold and Italic.
The Caption is in Yellow on a BLUE background. The Background colour of the
frame is set to Light Blue.
Notes: 1. The AddControl function always returns the ID of the newly defined
2. Two Text values are associated with most controls, a Caption value and
a Data value.
* The Caption value contains the control 's Header Text plus (where
applicable) all the internal string values used within the control
such as ComboBox Dropdown List values, ListBox Row values, etc.
* The Data value contains the current text value for a control. This can
be the currently selected ComboBox or ListBox entry, a user entered
string or Date value, etc.
6 - Defines a String control, horizontally centered on the screen with a
Caption of "Temp (C) :" in Black on Light Gray background and a centered
Data value in Black on a White background.

7 - Defines a Display control with no border horizontally centered on the
screen with a Caption of "Temp (F) :" in Black on a Light Blue background
and a centered Data value in Black on Light Blue background.

8 - Defines a Button control, horizontally centered on the screen with a
caption of "Close" in black on light green.

9 - Sets initial Data value of txtCentigrade control to "0".

10 - Sets initial Data value of dspFarenheit control to "32".

11 - Draws the defined controls onto screen. The two parameters (not used here)
are a text string used in a popup message to inform user what is happening
and a string defining a picture path which tells the graphic control
routines where to look for any pictures used on the form.

12 - The TouchCheck function continually scans looking for screen clicks on one
of the defined controls. The three parameters (again, not used here) are
FirstCtrl, LastCtrl and Period. The FirstCtrl and LastCtrl parameters can
be used to define which subset of a form's controls are to be scanned for
clicks. The Period parameter can be used to force the TouchCheck to return
even if no control is clicked (zero means only return if a control is
When a control is clicked, the Graphic Controls will perform any processing
required and if this results in a change in the controls Data value, the
function will return to ID of the control clicked to the calling program.
Certain controls which require no processing by the Graphic Controls
routines will always the control ID to the calling program (eg: Buttons).
As an example of the processing provided by the Graphic Controls, when a
String type control is clicked a graphic Input Screen will be displayed
allowing the user to enter or amend the control's Data string value. Only
if the Data string value is changed during this process will the function
exit and return the control's ID to the calling program.

13 - When the txtCentigrade control is clicked and it's value changed by the
Graphic Control routines the selCtrl will be set to the ID of the
txtCentigrade control.
The GetCtrlData$ function retrieves the new Data value which is used to
calculate the correspnding Farenheit value. The ModCtrlData function then
sets the dspFarenheit's Data text to this new value.

14 - The ID of the cmdClose button will be returned by the TouchCheck function
when it is clicked. In this case the additional processing is simply a
"goto close program" command.

15 - Close graphics and end program.

Hope this helps. The forum is always available if you have any queries (or suggestions and bug reports).

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Sun Aug 04, 2013 8:25 am 

Joined: Wed Oct 03, 2012 9:53 am
Posts: 2775
Location: Colorado, U.S.
JeffKerr wrote:
The manual supplied with the package contains full details
There are so many files in the GraphicControls directory that it may hard to find the manual. Here is a link to the book. That's the place to start, if you haven't already read it.

The link is to "GraphicControls Book.pdf", since that is for the latest version. There is another PDF file there, too, called "GraphicControls.pdf". That one is for an older release.

Amazing work, Jeff.

- Marc

 Post subject: Re: Graphic Controls Generator/Handler
Unread postPosted: Thu Aug 08, 2013 11:23 am 

Joined: Thu May 30, 2013 11:56 am
Posts: 18
Thank you all for this grate help. May Allah rewards you with Paradise. I'm grateful.

 Post subject: Re: Graphic Controls Generator/Handler v1.11
Unread postPosted: Wed Sep 18, 2013 5:53 am 

Joined: Tue Aug 02, 2011 10:21 am
Posts: 220
Just uploaded a new version (v1.11) of the GraphicControls.bas.

Also updated the GraphicControls_Readme.txt file in the FTP
GraphicsControls folder. Now includes brief details of all the files in
the folder and how they are used.

There was going to be another sample program that demonstrated some of the
changes in this release but it's not quite ready (needs some serious
testing - it's currently around 180K of source code) so I thought
I would release what I have now before going on holiday.

As usual let me know if you find any 'features' that should not be
there or you have any suggestions for future releases.
I would also be interested in hearing about how the Graphics Controls
are being used or the reasons as to why the Graphic Controls are not
suitable for use in your programs (eg: The include is too big, etc).

!v1.11 Changes:
!* Changed height of rows in ComboBox's dropdown list to be the same as
! the height of the control rather than a value based on the control's
! font size.
!* Reworked AddListRow, UpdateListRow and DeleteRow functions to update
! control caption string as well as the control data and display. To
! get an up to date list of contents after these functions have been
! used just use the GetCtrlCap$ function. Removes the need to keep
! maintaining a list of the contents within the program.
!* Added new style "bcCHECKRIGHT$" for CheckBox controls. With this
! style the caption will be drawn on the right of the Checkbox instead
! of the default left position.
!* Added three new bitmap functions:
! - bmobj=GetCtrlBitmapObj(ptrlNo)
! - CALL SetCtrlBitmapObj(pCtrlNo,bmobj)
! - CALL ModCtrlDrawnBitmap(pCtrlNo,bmobj,pRender)
! Can be used together to set/swap bitmaps. Use the GetCtrlBitmapObj
! function to get the bitmap object number of an existing drawn picture
! and then use the SetCtrlBitmapObj and ModCtrlDrawnBitmap functions to
! set and draw the bitmap of another picture control. These last two
! functions can also be used with bitmap object created within a user
! program, if required.
!* Added four new styles for use in MultiLine Listbox controls to enable
! the selection of different text fonts. The new Styles are:
! "<0>" - M(o)no Font (uses Capital Letter "O").
! "<A>" - S(a)n-Serif Font.
! "<E>" - S(e)rif Font.
! "<F>" - De(f)ault Font.
! See Testbed program - 'Test Listbox' menu option to see an example
! of formated text.
!* Changed Font Size parameters used in MultiLine ListBoxes. They were "0",
! "2", "4" and "6" (Default Font Size + 0, 2. 4 or 6). The new parameter
! values are "0" to "9" where "5" is the new Default Size setting. A number less
! than "5" will reduce the size of the font used and numbers above "5"
! will increase the size of the font used. The actual font size used
! is calculated using the formula:
! Default Font Size + (2 x (Parameter Value - 5)).
! eg: A parameter value of "0" (zero) decreases font size by 10,
! a parameter value of "9" increases the font size by 8 and a
! parameter value of "5" will use the default font size unchanged.
!* Added two new user functions AddCtrlStyle(pCtrlNo,pStyle$) and
! RemoveCtrlStyle(pCtrlNo,pStyle$). Enables control styles to be
! changed after the control has been drawn. The pStyle$ string can
! contain any number of style characters. Note: Only changing styles
! that influence the processing of a clicked control will have any
! effect (e.g. Adding/removing the 'Editable' style to a Multiline
! Listbox).
!* Added new style "bcBLACKBACK$". Works like existing style
! "bcfadeback$" but sets background using alpha=opaque rather than
! semiopaque so background is completely black.
!* Added new style "bcMenuList$" for use only with Buttons with a
! "bcMenuBtn$" style. This new style results in a combobox style
! 'dropdown' list of actions being displayed when the menu style
! button is pressed.
! Actions are specified in the control's caption value (the same way
! as combobox values are entered).
! eg: sCaption$=""+bcRECBREAK$+"Help"+bcRECBREAK$+"About".
! The first string ("") is ignored - for a ComboBox it would contain
! the controls heading. When the menu button is clicked a two item
! dropdown list ("Help" & "About") will appear and the required
! action can be selected.
! The AddControl 'middle' parameter (normally zero for button controls)
! should be set to the required width of the dropdown list.
! All bcMenuBtn$ style buttons return a control value of 1082 when
! clicked to maintain compatability with external keyboards. For
! bcMenuList$ style buttons the GetCtrlData$ function can then be used
! to retrieve the text of the dropdown list item selected.
! If the menu button on an external keyboard is pressed and the
! current form has a bcMenuBtn$ button with the style bcMenuList$
! defined then the dropdown list will be displayed as though the
! button on the screen was clicked.
! If no button with correct style present program will return value
! 1082 to calling program as before.
! See Testbed program for an example MenuList$ style button.
!* If an entry in a dropdown list is just "-" then a dividing line will
! be drawn in the list.
!* Changed background colour of drop down list button on combobox
! controls. If the combobox has the style "bcALLOWNEW$" (allows new
! entries to be added to the dropdown list) the button background
! colour will change to light green otherwise it will be set to white
! as before. The colour will be updated if the functions AddCtrlStyle
! and RemoveCtrlStyle are used.
! Change was made to provide a visually indication that the "allow new
! entries" option is available.
!* Added new Listbox style "bcNOHEADBOX$". Rather than using an empty
! caption string to trigger the removal of a Listbox heading, the new
! style "bcNOHEADBOX$" will do this. If this style present any caption
! string header text will be ignored.
!* Added new function "MoveCtrl(pCtrlNo,pType$,pX,pY,pW,pH,pRender)".
! Used to move and/or size a control. Only applies to Shape and Label
! controls (at the moment). Parameter 'pType$' should be set the "A" or
! "R" to indicate if the pX and pY parameters contain (R)elative
! movement values (ie: added to existing X and Y) or (A)bsolute
! position values (ie: resets the existing X and Y values). Maybe more
! control types will be added but because a control is made up of
! multiple graphic objects and each object can use a different set of
! modify values it can get complicated and probably needs a customised
! routine for each control type.
!* Added new function "GetCtrlSize(pCtrlNo,&pX,&pY,&pW,&pH)". Will
! return current position (X,Y) and size (W,H) of any control. For use
! with MoveCtrl funtion described above.
!* Renamed function "GetCtrlXY" to "GetCtrlClickXY" to avoid it being
! confused with the new function "GetCtrlSize".
!* Reworked Graphic Input panel. Fixed scaling problem. Added Select,
! Cut, Copy and Paste options plus various formatting functions. Text
! line can be clicked on to position cursor.
!* Fixed a bug in function "setscalingfactor" which produced the wrong
! scaling factor when screen height was greater than screen width.

Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 129 posts ]  Go to page Previous  1 ... 8, 9, 10, 11, 12, 13  Next

Who is online

Users browsing this forum: No registered users and 1 guest

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: