TextArea-like control to add nodes into it?
Hi,
is there any possibility to make a TextArea-like control, where you can put JavaFX nodes into?
I am looking for a textarea like in Skype, where you can put Smileys into and even Quotes from other users and can continue typing before and after it.
I could imagine a StringConverter to convert a Node into String and vice versa.
I'm not aware of an out-of-the-box component that can do this.
However, there is an effort underway to provide Rich Text controls to JavaFX, see: https://wikis.oracle.com/display/OpenJDK/Rich+Text
Similar Messages
-
Hi all,
i would like to add datas into my xml model but i don't manage to do it.
Here is the context :
-I have an xml file which represents a tree
-When the xml model is loaded, i bound it to a tree
-Then i add nodes to my tree ( aNode.addNode(new Node ) )
When adding a node, i would like the node to be represented to my model;
e.g : before adding a node
<node name="node1">
<node name="node1_1"/>
<node name="node1_2"/>
</node>
after the node is added :
<node name="node1">
<node name="node1_1"/>
<node name="node1_2"/>
<node name="new node"/>
</node>
I have tried xml setProperty:
oModel.setProperty(myPath,data);
oModel.setProperty(myPath,data,oContext);
Can somebody help me to achieve this?
Thanks,
best regards,
MarcThanks for this fast reply, i try it and i come back to you
Edit :
Here is my xml file :
<?xml version="1.0" encoding="utf-8"?>
<objectSet version="1.2.3.4">
<aRoot code="testCode" reference="0123456789" description="TestDescription"
owner="Tester">
<component name="MyCompo1" type="MyCompo1Type">
<component name="MyCompo2" type="MyCompo2Type">
<property name="myProperty2-1" type="string" value="null" />
<property name="myProperty2-2" type="string" value="null" />
<property name="myProperty2-3" type="string" value="null" />
</component>
<component name="MyCompo3" type="MyCompo3Type">
<property name="myProperty3-1" type="string" value="null" />
</component>
</component>
</aRoot>
</objectSet>
I made a button with the fellowing function attached :
aTestFunction: function(oEvent){
console.log("Test");
var tree = this.byId("myTree");
var oModel = tree.getModel();
var pty = oModel.getProperty("/aRoot/MyCompo1"); // Empty; path is not good
var pty1 = oModel.getProperty("/aRoot/component");//something but only whitespaces when printing
console.log(pty);//empty
console.log(pty1);// a lot of whitespaces (9lines of different sizes)
pty1.push("node");//Error, pty1.push is not a function
oModel.setProperty("/aRoot/component",pty1);
The argument of pty1.push is not good, but the function cannot be even called.
Another try? -
Change Node name dyanamic like as Windows Add "New Folder"
Hi Friends
I m new in swing. I want ur help.
I want to rename node of JTree like windows.
means when I click on right button of mouse, one pop-up is displayed for
"Add Node".
but when it is added that time we can change it name like Windows. It will select whole "Add Node" text.
I hope u can understand my prob.
Awaiting 4 ur prompt reply.There's a demo for doing this on this site. Check oout "Tree Tutorial" or something like that
-
MSBUILD - Using MSBUILD I would like to add files into the solution AFTER BUILD process.
Hi,I have the requirement to add files into the project after project has been build. I wish to add some javascript and css files into the project at the PRE BUILD or POST BUILD time. I specified <Content Include="path\filename"/> in
the AFTERBUILD Target element. But it seems not including the files.
Regards,
SenthilHello Senthil Kumar T D,
In msbuild files are include/exclude in ItemGroup like the following MSDN article mentioned:
How to: Select the Files to Build
How to: Exclude Files from the Build
So here you need to consider put them in the ItemGroup and use your files in your target.
And if you want to MSBuild and including extra files from multiple builds - See more at:
http://blog.samstephens.co.nz/2010-10-18/msbuild-including-extra-files-multiple-builds/#sthash.G5SdxGag.dpuf
This can be used for multiple builds. Anyway, please follow the first two sample I mentioned to reset your project file.
Best Regards,
Barry
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
When I add pictures into MUSE , do the pictures resize for web quality (And so the page loads fast enough) or do I have to do this using an external software like photoshop, etc. ?
Also is there any way I can change the contact form email for all of my contact forms at once.
I have over 100 contact forms and i want to make them reach the same email anyway I can do that without going one by one?If you have placed the image in Muse using File > Place and then scaled the image down in Muse while editing, then Muse publishes/exports the scaled down/optimized image in final output. When using as a Fill, the output size depends on the Fitting option you setup in the Fill options.
As for the contact form email, you would need to specify the email address for each form individually. There is no workflow to edit the same for multiple forms at a time.
Cheers,
Vikas -
Program to add node / delete node in the tree control via abap object
Hi all,
i am new to abap objects.
Can anyone help me out to give program about add node , delete node at
a particular point in tree hierarchy.
folder1 -- level 1
subfolder1 -- level 2
*********subfolder1 -- level 3
*********subfolder2 -- level 3
subfolder2 -- level 2
folder2 -- level 1
if i select level3 and click on ADD button .....i get a facility to add new node
at level 3 and and same thing can happen at level1 and level2 ............ if i select
and folder at level3 and click on delete button ....it should delete that folder...
if you do not have such program ........then guide me how to achieve this target via object oriented because i have to split the screen also and have to show some alve display in that.
just guide me how to add and delete node at a particular level in tree structure....
thanks in advance........Hello Ravi,
Try this demo program:
<b>BCALV_TREE_01</b>
<b>BCALV_TREE_DEMO</b>
BCALV_TREE_SIMPLE_DEMO
Also try:
BCALV_TREE_02
BCALV_TREE_03
BCALV_TREE_04
BCALV_TREE_05
BCALV_TREE_06
regards,
Beejal
**reward if this helps -
How to add TickMark into dropdownlist?
Hello,
i am looking for dropdownlist with multiple selection.
Is there a DropDownList widget allows more than one menu item to be selected at a time?
i got ans from forum
http://forums.adobe.com/message/3319311#3319311
they said we can add tickmark into dropdownlist.so that we can select more than one item.But How to add Tickmark into dropdownlist? OR can we custmize dropdownlist?
please, give some hint.
If Anybody knows the solution , please help me.I think there are two ways:
1) Use a specific control with text tokenization, like a Telerik's one RadAutoCompleteBox (user1's text is a token, and user2's text is an editable
text area);
2) Use CSR (client-side rendering; JSLink field of a list EditForm's web part) to make the original field (input tag) read only and dynamically add second text
box for user2's editable text. Then on form submit you can combine the two values: read only one and dynamically edited. You may do so via overriding the PreSaveAction() JavaScript function in your JSLink file.
v -
Insert Node into XML using XPATH
Hi,
I'm having problems inserting a node into a XML. After getting some attributes from the CRC result i'd like to store them in a temp xml variable.
After that the parent node of the attributes should be inserterd in a goal XML with a repeating node structure.
Whats the right way to set a node to a certain position in the goal XML?
Now the only thing i'm getting is erros about transaction:
Caused by: javax.resource.ResourceException: Transaction is not active: tx=TransactionImple < ac, BasicAction: a307d1e:fd15:4d35c503:1351f50 status: ActionStatus.ABORT_ONLY >
at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectio nManager.java:304)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnec tionManager2.java:396)
Etc..
Thx!You can always append new nodes which has a unique tag name (this won't get overwritten).
Which means, each time when you add a node, it should have tag name which has not already present within the same parent node.
Later you can replace the tag name with the actual name by using XSL transformations.
I've tried this in one of my project and worked fine.
Nith -
Customize a control and property nodes
I don't know if and how it is possible. Is it possible to customize a control, but having access to property nodes too?
I explain better: if I create a control and I customize it, the customized control is a file.ctl, which has only front panel, but not block diagram. So that I cannot customize it using property nodes. Is there a way to bypass it?You don't need to create a .ctl file to customize a control. It is just there so you can save a control you have customized to a file.
Yes you can customize a control using property nodes. You just use property nodes that are implicitly linked to a specific control, or you explicitly link to a control by passing a reference to the control to the property node.
If you want to programmatically save a customized control to a .ctl, or open a .ctl file and customize it further, I think you'll have to look into LabVIEW scripting. But I wouldn't do anything like that if I were you until you get thoroughly comfortable with using regular property nodes, which I don't think you are otherwise you wouldn't have asked this question. -
How to dynamically add Nodes to JTree?
How to add nodes to a Jtree by getting the information into a specific file
For example, in JList:
DefaultListModel workgroups;
workgroups = new DefaultListModel();
List<String> workgroupsList = new ArrayList<String>();
workgroupsList = ParserUtils.getWorkgroupList(ParserUtils.getConfigPath() + "\\.workgroup.properties");
if (!workgroupsList.isEmpty()){
for (String workgroup : workgroupsList){
workgroups.addElement(workgroup.toString().trim());
workgroupList = new JList(workgroups); //adds the list workgroupsThe output of this will be a JList displaying the list of workgroups per line. The list could be found in a file name "workgroup.properties"
Question is, is it possible to adapt this same method in JTree. The information per line will serve as one node in the tree. For example, I have 3 workgroups in the list, there will also be 3 nodes to be found in the tree.
Any suggestions?
THanks.There's a huge JTree example in the Swing tutorial. It's a bit of a beast to use.
-
How to add a custom multimedia playback control to add a time line of what is being played?
How to add a custom skin in multimedia playback control to add a time line of what is being played? As it is being played...
I need a time line so any part of the what is being played can be found by time, ie at 1 minute and 30 seconds in and continues for 45 seconds out of a 50 minute audo.If you're talking about a playback controller within the rich media annotation (RMA) then you need to write your own widget in Flash or Flex, and then place the video and widget files using the multimedia "Add Flash" tool in Acrobat instead of the "Add Video" tool. Aside from a bunch of proprietary code to handle events, commenting and the API (which you can live without for basic play-pause-scrub applications), video RMAs are just an embedded SWF file containing an FLVPlayback component. The skin and the video file itself are added to the RMA as resource entries. You can build your own version and have it display whatever controls you want, provided you know how to write ActionScript!
If you're talking about a controller that's external to the RMA (e.g. a series of links or buttons elsewhere on the page) then in the past you would use FLV video files and the 'cue points' feature that's built into Acrobat - however Adobe removed the ability to create FLV files in the latest version of CC, so unless you have CS6 or earlier it's a non-starter. Instead you can manually set playback start points using the special "multimedia operations" link action in your PDF - though stopping playback at a defined point is very difficult without FLV cues. For that you're back to writing your own widget. -
How to add data into a List box
CS3 SDk:Windows<br /><br />Hi all,<br />I am trying to add data into a basic List box in CS3??<br /><br />// .fr<br />GenericPanelWidget<br /> (<br /> // CControlView properties<br /> kInvalidWidgetID, // widget ID<br /> kPMRsrcID_None, // PMRsrc ID<br /> kBindNone, // frame binding<br /> Frame(0,0,250,90) // left, top, right, bottom<br /> kTrue, // visible<br /> kTrue, // enabled<br /> // GroupPanelAttributes properties<br /> "", // header widget ID<br /> { <br /> <br /> WidgetListBoxWidgetN<br /> (<br /> kWFPListBoxWidgetID, kSysListBoxPMRsrcId, // WidgetId,RsrcId<br /> kBindAll, // Frame binding<br /> Frame(0,0,250,90) // Frame<br /> kTrue, kTrue, // Visible, Enabled<br /> 1,0, // List dimensions<br /> 19, // Cell height<br /> 1, // Border width<br /> kFalse,kTrue, // Has scroll bar (h,v)<br /> kTrue, // Multiselection<br /> kTrue, // List items can be reordered<br /> kTrue, // Draggable to new/delete buttons<br /> kFalse, // Drag/Dropable to other windows<br /> kTrue, // An item always has to be selected<br /> kFalse,// Don't notify on reselect<br /> kFalse, <br /> { <br /> } <br /> <br />),<br />},<br />),<br /><br />//-------ID.h--------<br />DECLARE_PMID(kWidgetIDSpace, kWFPListBoxWidgetID, kWFPPrefix + 2)<br /><br />//observer.cpp-----------WFPDialogObserver::Update<br /><br />//get currently selected/active widget <br />WidgetID theSelectedWidget = controlView->GetWidgetID();<br /><br />// ist it the text edit field? <br />if (theSelectedWidget == kWFPInsertButtonWidgetID && theChange == kTrueStateMessage) <br />{ <br /><br />IControlView* listBox = panelControlData->FindWidget(kWFPListBoxWidgetID);<br /><br />InterfacePtr<IListControlData> listControlData(listBox, UseDefaultIID()); <br /><br />//Insert the string into listbox <br />PMString strText = dialogCtrl->GetTextControlData(kWFPTextEditBoxWidgetID); <br /><br />// obviously there can't be a translation for text entered by user <br />strText.SetTranslatable(kFalse);<br />listControlData->Add(strText,kWFPTextEditBoxWidgetID); <br />dialogCtrl->SetTextControlData(kWFPTextEditBoxWidgetID, ""); <br />break; <br /><br />I am not able to Add items into list box.<br /><br />I tried based on Discussion <br />http://www.adobeforums.com/webx/.3bc43877<br /><br />but not able to locate SDKListBoxHelper file .it is not available in SDK.<br /><br />Please ,<br />Tell me Where I am going wrong.<br /><br />Thanks,<br />Adil
resource VSPDialogWidget (kSDKDefDialogResourceID + index_enUS)
__FILE__,
__LINE__,
kVSPDialogWidgetID, // WidgetID
kPMRsrcID_None, // RsrcID
kBindNone, // Binding
Frame(5,0,491,266) // Frame (l,t,r,b)
kTrue,
kTrue, // Visible, Enabled
kVSPDialogTitleKey, // Dialog name
DefaultButtonWidget
kOKButtonWidgetID, // WidgetID
kSysButtonPMRsrcId, // RsrcID
kBindNone, // Binding
Frame(9,234,89,254) // Frame (l,t,r,b)
kTrue,
kTrue, // Visible, Enabled
kSDKDefOKButtonApplicationKey, // Button text
CancelButtonWidget
kCancelButton_WidgetID, // WidgetID
kSysButtonPMRsrcId, // RsrcID
kBindNone, // Binding
Frame(394,234,474,254) // Frame (l,t,r,b)
kTrue,
kTrue, // Visible, Enabled
kSDKDefCancelButtonApplicationKey, // Button name
kTrue, // Change to Reset on option-click.
WLBCmpListBox //Tree view
kWLBCmpListBoxWidgetID, kPMRsrcID_None, // WidgetId, RsrcId
kBindAll, // Frame binding
Frame(299,49,475,170) // Frame
kTrue, kTrue, // Visible, Enabled
kTrue, // EraseBeforeDraw
kInterfacePaletteFill, // InterfaceColor
kHideRootNode | kDrawEndLine, // Options. Display root node
kFalse, // Use H Scroll bar
kTrue, // Use V scroll bar
20, // fVScrollButtonIncrement
20, // fVThumbScrollIncrement
0, // fHScrollButtonIncrement
0, // fHThumbScrollIncrement
2, // Items selectable, 0 = No Selection, 1 = Single Selection, 2 = Multiple Selection
kFalse, // Allow children from multiple parents to be selected
kTrue, // Allow discontiguous selection
//The tree view is dynamically created.
// added to support the list elements in the list box
resource LocaleIndex (kWLBCmpListElementRsrcID)
kViewRsrcType,
kWildFS, k_Wild, kWLBCmpListElementRsrcID + index_enUS
resource WLBCmpNodeWidget (kWLBCmpListElementRsrcID + index_enUS)
__FILE__, __LINE__,
kWLBCmpListParentWidgetId, kPMRsrcID_None, // WidgetId, RsrcId
kBindLeft | kBindRight, // Frame binding
Frame(0, 0, 194, 20), // Frame
kTrue, kTrue, // Visible, Enabled
"", // Panel name
// Just a info-static text widget with about-box text view to get white bg.
WLBCmpTextWidget
kWLBCmpTextWidgetID, kPMRsrcID_None, // WidgetId, RsrcId
kBindLeft | kBindRight, // Frame binding
Frame(45,1,194,18) // Frame
kTrue, kTrue, kAlignLeft,kEllipsizeEnd // Visible, Enabled, Ellipsize style
"", // Initial text
0, // Associated widget for focus
kPaletteWindowSystemScriptFontId, // default font
kPaletteWindowSystemScriptHiliteFontId, // for highlight state.
If you still got problems, post you email here - I'll send you the complete project/code then.
-Marc -
Splitting a Linked List at a Given Node, into Two Sublists??
My code just will not work!! Any help would be appreciated! My problem is in the last method SplitAt. These are the conditions set and my code:
Splitting a Linked List at a Given Node, into Two Sublists
a. Add the following as an abstract method to the class
LinkedListClass:
public void splitAt (LinkedListClass<T> secondList, T item);
//This method splits the list at the node with the info item into two sublists.
//Precondition: The list must exist.
//Postcondition: first and last point to the first and last nodes of the first sublist,
// respectively. secondList.first and secondList.last point to the first
// and last nodes of the second sublist.
Consider the following statements:
UnorderedLinkedList<Integer> myList;
UnorderedLinkedList<Integer> otherList;
Suppose myList points to the list with the elements 34, 65, 18, 39, 27, 89, and 12 (in this order). The statement
myList.splitAt(otherList, 18);
splits myList into two sublists: myList points to the list with elements 34 and 65, and otherList points to the sublist with elements 18, 39, 27, 89, and 12.
b. Provide the definition of the method splitAt in the class UnorderedLinkedList. Also write a program to test your method.
public class UnorderedLinkedList<T> extends LinkedListClass<T>
//Default constructor
public UnorderedLinkedList()
super();
//Method to determine whether searchItem is in
//the list.
//Postcondition: Returns true if searchItem is found
// in the list; false otherwise.
public boolean search(T searchItem)
LinkedListNode<T> current; //variable to traverse
//the list
boolean found;
current = first; //set current to point to the first
//node in the list
found = false; //set found to false
while (current != null && !found) //search the list
if (current.info.equals(searchItem)) //item is found
found = true;
else
current = current.link; //make current point to
//the next node
return found;
//Method to insert newItem in the list.
//Postcondition: first points to the new list
// and newItem is inserted at the
// beginning of the list. Also,
// last points to the last node and
// count is incremented by 1.
public void insertFirst(T newItem)
LinkedListNode<T> newNode; //variable to create the
//new node
newNode =
new LinkedListNode<T>(newItem, first); //create and
//insert newNode before
//first
first = newNode; //make first point to the
//actual first node
if (last == null) //if the list was empty, newNode is
//also the last node in the list
last = newNode;
count++; //increment count
//Method to insert newItem at the end of the list.
//Postcondition: first points to the new list and
// newItem is inserted at the end
// of the list. Also, last points to
// the last node and
// count is incremented by 1.
public void insertLast(T newItem)
LinkedListNode newNode; //variable to create the
//new node
newNode =
new LinkedListNode(newItem, null); //create newNode
if (first == null) //if the list is empty, newNode is
//both the first and last node
first = newNode;
last = newNode;
else //if the list is not empty, insert
//newNode after last
last.link = newNode; //insert newNode after last
last = newNode; //set last to point to the
//actual last node
count++;
}//end insertLast
//Method to delete deleteItem from the list.
//Postcondition: If found, the node containing
// deleteItem is deleted from the
// list. Also, first points to the first
// node, last points to the last
// node of the updated list, and count
// is decremented by 1.
public void deleteNode(T deleteItem)
LinkedListNode<T> current; //variable to traverse
//the list
LinkedListNode<T> trailCurrent; //variable just
//before current
boolean found;
if ( first == null) //Case 1; the list is empty
System.err.println("Cannot delete from an empty "
+ "list.");
else
if (first.info.equals(deleteItem)) //Case 2
first = first.link;
if (first == null) //the list had only one node
last = null;
count--;
else //search the list for the given info
found = false;
trailCurrent = first; //set trailCurrent to
//point to the first node
current = first.link; //set current to point to
//the second node
while (current != null && !found)
if (current.info.equals(deleteItem))
found = true;
else
trailCurrent = current;
current = current.link;
}//end while
if (found) //Case 3; if found, delete the node
count--;
trailCurrent.link = current.link;
if (last == current) //node to be deleted
//was the last node
last = trailCurrent; //update the value
//of last
else
System.out.println("Item to be deleted is "
+ "not in the list.");
}//end else
}//end else
}//end deleteNode
public void splitAt(LinkedListClass<T> secondList, T item)
LinkedListNode<T> current;
LinkedListNode<T> trailCurrent;
int i;
boolean found;
if (first==null)
System.out.println("Empty.");
first=null;
last=null;
count--;
else
current=first;
found=false;
i=1;
while(current !=null &&!found)
if(current.info.equals(secondList))
found= true;
else
trailCurrent=current;
i++;
if(found)
if(first==current)
first=first;
last=last;
count=count;
count=0;
else
first=current;
last=last;
last=null;
count = count- i+1;
count = i-1;
else
System.out.println("Item to be split at is "
+ "not in the list.");
first=null;
last=null;
count=0;
}I dont have a test program at all. The program is supposed to prompt for user input of numbers. (it does) Take the input and end at input of -999 (it does). Then it asks user where it wants to split list (it does). When I enter a number it does nothing after that. I am going to post updated code and see if that helps along with all the classes. Thanks!
This is the class to prompt:
import java.util.*;
public class Ch16_ProgEx6
static Scanner console = new Scanner(System.in);
public static void main(String[] args)
UnorderedLinkedList<Integer> list
= new UnorderedLinkedList<Integer>();
UnorderedLinkedList<Integer> subList =
new UnorderedLinkedList<Integer>();
Integer num;
System.out.println("Enter integers ending with -999.");
num = console.nextInt();
while (num != -999)
list.insertLast(num);
num = console.nextInt();
System.out.println();
System.out.println("list: ");
list.print();
System.out.println();
System.out.println("Length of list: " + list.length());
System.out.print("Enter the number at which to split list: ");
num = console.nextInt();
list.splitAt(subList, num);
System.out.println("Lists after splitting list");
System.out.print("list: ");
list.print();
System.out.println();
System.out.println("Length of list: " + list.length());
System.out.print("sublist: ");
subList.print();
System.out.println();
System.out.println("Length of sublist: " + subList.length());
}This is the ADT:
public interface LinkedListADT<T> extends Cloneable
public Object clone();
//Returns a copy of objects data in store.
//This method clones only the references stored in
//each node of the list. The objects that the
//list nodes point to are not cloned.
public boolean isEmptyList();
//Method to determine whether the list is empty.
//Postcondition: Returns true if the list is empty;
// false otherwise.
public void initializeList();
//Method to initialize the list to an empty state.
//Postcondition: The list is initialized to an empty
// state.
public void print();
//Method to output the data contained in each node.
public int length();
//Method to return the number of nodes in the list.
//Postcondition: The number of nodes in the list is
// returned.
public T front();
//Method to return a reference of the object containing
//the data of the first node of the list.
//Precondition: The list must exist and must not be empty.
//Postcondition: The reference of the object that
// contains the info of the first node
// is returned.
public T back();
//Method to return a reference of object containing
//the data of the last node of the list.
//Precondition: The list must exist and must not be empty.
//Postcondition: The reference of the object that
// contains the info of the last node
// is returned.
public boolean search(T searchItem);
//Method to determine whether searchItem is in the list.
//Postcondition: Returns true if searchItem is found
// in the list; false otherwise.
public void insertFirst(T newItem);
//Method to insert newItem in the list.
//Postcondition: newItem is inserted at the
// beginning of the list.
public void insertLast(T newItem);
//Method to insert newItem at the end of the list.
//Postcondition: newItem is inserted at the end
// of the list.
public void deleteNode(T deleteItem);
//Method to delete deleteItem from the list.
//Postcondition: If found, the node containing
// deleteItem is deleted from the
// list.
public void splitAt(LinkedListClass<T> secondList, T item);
}This is the linked list class:
import java.util.NoSuchElementException;
public abstract class LinkedListClass<T> implements LinkedListADT<T>
protected class LinkedListNode<T> implements Cloneable
public T info;
public LinkedListNode<T> link;
//Default constructor
//Postcondition: info = null; link = null;
public LinkedListNode()
info = null;
link = null;
//Constructor with parameters
//This method sets info pointing to the object to
//which elem points to and link is set to point to
//the object to which ptr points to.
//Postcondition: info = elem; link = ptr;
public LinkedListNode(T elem, LinkedListNode<T> ptr)
info = elem;
link = ptr;
//Returns a copy of objects data in store.
//This method clones only the references stored in
//the node. The objects that the nodes point to
//are not cloned.
public Object clone()
LinkedListNode<T> copy = null;
try
copy = (LinkedListNode<T>) super.clone();
catch (CloneNotSupportedException e)
return null;
return copy;
//Method to return the info as a string.
//Postcondition: info as a String object is
// returned.
public String toString()
return info.toString();
} //end class LinkedListNode
public class LinkedListIterator<T>
protected LinkedListNode<T> current; //variable to
//point to the
//current node in
//list
protected LinkedListNode<T> previous; //variable to
//point to the
//node before the
//current node
//Default constructor
//Sets current to point to the first node in the
//list and sets previous to null.
//Postcondition: current = first; previous = null;
public LinkedListIterator()
current = (LinkedListNode<T>) first;
previous = null;
//Method to reset the iterator to the first node
//in the list.
//Postcondition: current = first; previous = null;
public void reset()
current = (LinkedListNode<T>) first;
previous = null;
//Method to return a reference of the info of the
//current node in the list and to advance iterator
//to the next node.
//Postcondition: previous = current;
// current = current.link;
// A refrence of the current node
// is returned.
public T next()
if (!hasNext())
throw new NoSuchElementException();
LinkedListNode<T> temp = current;
previous = current;
current = current.link;
return temp.info;
//Method to determine whether there is a next
//element in the list.
//Postcondition: Returns true if there is a next
// node in the list; otherwise
// returns false.
public boolean hasNext()
return (current != null);
//Method to remove the node currently pointed to
//by the iterator.
//Postcondition: If iterator is not null, then the
// node that the iterator points to
// is removed. Otherwise the method
// throws NoSuchElementException.
public void remove()
if (current == null)
throw new NoSuchElementException();
if (current == first)
first = first.link;
current = (LinkedListNode<T>) first;
previous = null;
if (first == null)
last = null;
else
previous.link = current.link;
if (current == last)
last = first;
while (last.link != null)
last = last.link;
current = current.link;
count--;
//Method to return the info as a string.
//Postcondition: info as a String object is returned.
public String toString()
return current.info.toString();
} //end class LinkedListIterator
//Instance variables of the class LinkedListClass
protected LinkedListNode<T> first; //variable to store the
//address of the first
//node of the list
protected LinkedListNode<T> last; //variable to store the
//address of the last
//node of the list
protected int count; //variable to store the number of
//nodes in the list
//Default constructor
//Initializes the list to an empty state.
//Postcondition: first = null, last = null,
// count = 0
public LinkedListClass()
first = null;
last = null;
count = 0;
//Method to determine whether the list is empty.
//Postcondition: Returns true if the list is empty;
// false otherwise.
public boolean isEmptyList()
return (first == null);
//Method to initialize the list to an empty state.
//Postcondition: first = null, last = null,
// count = 0
public void initializeList()
first = null;
last = null;
count = 0;
//Method to output the data contained in each node.
public void print()
LinkedListNode<T> current; //variable to traverse
//the list
current = first; //set current so that it points to
//the first node
while (current != null) //while more data to print
System.out.print(current.info + " ");
current = current.link;
}//end print
//Method to return the number of nodes in the list.
//Postcondition: The value of count is returned.
public int length()
return count;
//Method to return a reference of the object containing
//the data of the first node of the list.
//Precondition: The list must exist and must not be empty.
//Postcondition: The reference of the object that
// contains the info of the first node
// is returned.
public T front()
return first.info;
//Method to return a reference of object containing
//the data of the last node of the list.
//Precondition: The list must exist and must not be empty.
//Postcondition: The reference of the object that
// contains the info of the last node
// is returned.
public T back()
return last.info;
//Returns a copy of objects data in store.
//This method clones only the references stored in
//each node of the list. The objects that the
//list nodes point to are not cloned.
public Object clone()
LinkedListClass<T> copy = null;
try
copy = (LinkedListClass<T>) super.clone();
catch (CloneNotSupportedException e)
return null;
//If the list is not empty clone each node of
//the list.
if (first != null)
//Clone the first node
copy.first = (LinkedListNode<T>) first.clone();
copy.last = copy.first;
LinkedListNode<T> current;
if (first != null)
current = first.link;
else
current = null;
//Clone the remaining nodes of the list
while (current != null)
copy.last.link =
(LinkedListNode<T>) current.clone();
copy.last = copy.last.link;
current = current.link;
return copy;
//Method to return an iterator of the list.
//Postcondition: An iterator is instantiated and
// returned.
public LinkedListIterator<T> iterator()
return new LinkedListIterator<T>();
//Method to determine whether searchItem is in
//the list.
//Postcondition: Returns true if searchItem is found
// in the list; false otherwise.
public abstract boolean search(T searchItem);
//Method to insert newItem in the list.
//Postcondition: first points to the new list
// and newItem is inserted at the
// beginning of the list. Also,
// last points to the last node and
// count is incremented by 1.
public abstract void insertFirst(T newItem);
//Method to insert newItem at the end of the list.
//Postcondition: first points to the new list and
// newItem is inserted at the end
// of the list. Also, last points to
// the last node and
// count is incremented by 1.
public abstract void insertLast(T newItem);
//Method to delete deleteItem from the list.
//Postcondition: If found, the node containing
// deleteItem is deleted from the
// list. Also, first points to the first
// node, last points to the last
// node of the updated list, and count
// is decremented by 1.
public abstract void deleteNode(T deleteItem);
public abstract void splitAt(LinkedListClass<T> secondList, T item);
}And this is the UnorderedLinked Class with the very last method the one being Im stuck on. The SplitAt Method.
public class UnorderedLinkedList<T> extends LinkedListClass<T>
//Default constructor
public UnorderedLinkedList()
super();
//Method to determine whether searchItem is in
//the list.
//Postcondition: Returns true if searchItem is found
// in the list; false otherwise.
public boolean search(T searchItem)
LinkedListNode<T> current; //variable to traverse
//the list
boolean found;
current = first; //set current to point to the first
//node in the list
found = false; //set found to false
while (current != null && !found) //search the list
if (current.info.equals(searchItem)) //item is found
found = true;
else
current = current.link; //make current point to
//the next node
return found;
//Method to insert newItem in the list.
//Postcondition: first points to the new list
// and newItem is inserted at the
// beginning of the list. Also,
// last points to the last node and
// count is incremented by 1.
public void insertFirst(T newItem)
LinkedListNode<T> newNode; //variable to create the
//new node
newNode =
new LinkedListNode<T>(newItem, first); //create and
//insert newNode before
//first
first = newNode; //make first point to the
//actual first node
if (last == null) //if the list was empty, newNode is
//also the last node in the list
last = newNode;
count++; //increment count
//Method to insert newItem at the end of the list.
//Postcondition: first points to the new list and
// newItem is inserted at the end
// of the list. Also, last points to
// the last node and
// count is incremented by 1.
public void insertLast(T newItem)
LinkedListNode newNode; //variable to create the
//new node
newNode =
new LinkedListNode(newItem, null); //create newNode
if (first == null) //if the list is empty, newNode is
//both the first and last node
first = newNode;
last = newNode;
else //if the list is not empty, insert
//newNode after last
last.link = newNode; //insert newNode after last
last = newNode; //set last to point to the
//actual last node
count++;
}//end insertLast
//Method to delete deleteItem from the list.
//Postcondition: If found, the node containing
// deleteItem is deleted from the
// list. Also, first points to the first
// node, last points to the last
// node of the updated list, and count
// is decremented by 1.
public void deleteNode(T deleteItem)
LinkedListNode<T> current; //variable to traverse
//the list
LinkedListNode<T> trailCurrent; //variable just
//before current
boolean found;
if ( first == null) //Case 1; the list is empty
System.err.println("Cannot delete from an empty "
+ "list.");
else
if (first.info.equals(deleteItem)) //Case 2
first = first.link;
if (first == null) //the list had only one node
last = null;
count--;
else //search the list for the given info
found = false;
trailCurrent = first; //set trailCurrent to
//point to the first node
current = first.link; //set current to point to
//the second node
while (current != null && !found)
if (current.info.equals(deleteItem))
found = true;
else
trailCurrent = current;
current = current.link;
}//end while
if (found) //Case 3; if found, delete the node
count--;
trailCurrent.link = current.link;
if (last == current) //node to be deleted
//was the last node
last = trailCurrent; //update the value
//of last
else
System.out.println("Item to be deleted is "
+ "not in the list.");
}//end else
}//end else
}//end deleteNode
public void splitAt(LinkedListClass<T> secondList, T item)
LinkedListNode<T> current;
LinkedListNode<T> trailCurrent;
int i;
boolean found;
if (first==null)
System.out.println("Empty.");
first=null;
last=null;
count--;
count=0;
else
current=first;
found=false;
i=1;
while(current !=null &&!found)
if(current.info.equals(item))
found= true;
else
trailCurrent=first;
current=first;
i++;
if(found)
if(first==current)
first.link=first;
last.link=last;
count--;
count=0;
else
first.link=current;
last.link=last;
last=null;
count = count- i+1;
count = i-1;
} else {
System.out.println("Item to be split at is "
+ "not in the list.");
first=null;
last=null;
count=0;
Any help or just advice would be fine. Im not the best at Java, better at VB. Am completely stumped! Thanks so much! -
Why are some of my pictures blank green screens when I try to add them into a montage??
Why are some of my pictures from my iphone showing up as blank green screen when I try to add them into imovie?
Look under "More like this" on the right of this page, specifically "Re: no photo selected"; the discussion there may be of help.
-
hi all
i have a self join table with following column as select statement
SELECT 1, LEVEL, a.product, ''exit'',a.techno
FROM bom_products a
CONNECT BY PRIOR a.techno = a.set_techno
START WITH a.set_techno IS NULL
that techno is pk
and set_techno is fk
and use
following code for view my tree:
DECLARE
htree ITEM;
b NUMBER;
a RECORDGROUP;
BEGIN
go_block('BLK_CHART');
htree := FIND_ITEM('BLK_CHART.T');
a := FIND_GROUP('a');
IF NOT ID_NULL(a) THEN
DELETE_GROUP(a);
END IF;
a := CREATE_GROUP_FROM_QUERY('a',
'SELECT 1, LEVEL, a.product, ''exit'',a.techno
FROM bom_products a
CONNECT BY PRIOR a.techno = a.set_techno
START WITH a.set_techno IS NULL and a.techno='''||:BLK.TECHNO||''''
b := POPULATE_GROUP(a);
FTREE.SET_TREE_PROPERTY(htree, FTREE.RECORD_GROUP, a);
END;
and no problem,
my issue is :
add child to my tree and record to my table
can any one help me to add node???????????????????WRITE THE FOLLOWING SCRIPT IN THE WHEN-BUTTON-PRESSED
INSERT INTO TABLE VALUES (NEW_DISPLAY_LABEL,NEW_VALUE);
COMMIT;
P_PARENT_NODE_VALUE:= ftree.get_tree_node_property('tree4',:system.trigger_node,ftree.node_value);
P_PARENT_NODE := Ftree.Find_Tree_Node('tree4',P_PARENT_NODE_VALUE,Ftree.FIND_NEXT, Ftree.NODE_value, Ftree.ROOT_NODE, Ftree.ROOT_NODE);
P_NEW_NODE := ftree.add_tree_node('tree4',P_PARENT_NODE,ftree.parent_offset,ftree.last_child,ftree.expanded_node,NEW_DISPLAY_LABEL,null,NEW_VALUE);
Message was edited by:
zakaoullah
Maybe you are looking for
-
How to determine Organizational Data based on User Login
Dear all, How to determine organizational data based on user login in Activity transaction, currently org determination is happening after entering customer number in the transaction. We have used 'Responsibility' determination rule for this configur
-
Why can't I turn on Photostream?
I open iPhoto and regardless if I go to the Photostream tab and click "Turn On Photostream" or go to iPhoto Preferences and check "Enable Photostream", nothing happens. The button does it's little animation to acknowledge I clicked it and the check b
-
ADF Faces - ConvertNumber, aligning in table column
Is there a way in ADF Faces to display a table with a column of currency figures, with possible trailing sign for negatives, aligned on the decimal point? With a total at the bottom? These seem like such elementary requirements, but I can find no ref
-
Selective Deletion of Synchronous Messages Possible ?
I want to delete messages for few synchronous interfaces only.I do not want to archive these messages and also I understand that archiving of synchronos messages is possible. I scheduled the job SAP_BC_XMB_DELETE_<client> to delete the messages bu
-
Nakisa Org Hierarchy view setup
Hi, Does anyone have any information on setting up the Org Hierarchy view in TVN? Currently I only have a single, blank box displaying on the Nakisa webpage in the Org view (under Position tab). Also, I'm looking for the full document set and a confi