Clear the selection of items in the ListView
I have a ListView with different elements.For the most part I have multiple selection items as the default, but for some items I would like to completely disable the selection.
I tried to disable the cell while it displays a unselectable element, but this only disables the selection of direct events on the cell. I can still select it by clicking on an element above one, and then shift-click on an item below.
I also tried to set the empty cell at the display of an element not selectable. This is the problem with the above shift selection, but I can always choose the cell by selecting an element next to him and pressing the respective arrow key.
Does anyone have an idea?
Thank you
L2P
I have not tried to do, but the first thing I want to try (or at least consider) would be to write a custom selection model.
Tags: Java
Similar Questions
-
[Explanation necessary] Clears the listview data and fill it again with new data
Hello
I correctly filled a listview in c ++, data analysed and does interesting things with it. However, I am drunk stumbling, unable to find a way delete and repopulate my display of the list...
- How can after I insert data in the list view, I clear the list data and run again the same method (init) who populated the list view with the data in the first place?
Here are the docs that I referenced and I don't understand how to implement the methods in my code.
QList - clear() method
https://developer.BlackBerry.com/Cascades/reference/QList.html#clear
Using the data access Code, example
data_access/using_data_sourceGroupDataModel - Clear()
https://developer.BlackBerry.com/Cascades/reference/bb__cascades__groupdatamodel.html#clear
CODE
Here is my code - filling of the display of the list of C++ and display of data in a ListView.MyApp.cpp
MyApp::MyApp(bb::cascades::Application *app) : QObject(app){ // create scene document from main.qml asset // set parent to created document to ensure it exists for the whole application lifetime QmlDocument *qml = QmlDocument::create("asset:///main.qml").parent(this); AbstractPane *root = qml->createRootObject
(); qml->setContextProperty("yoyo",this); //grab references list_view = root->findChild ("listView"); // set created root object as a scene app->setScene(root); mNetworkAccessManager = new QNetworkAccessManager(this); bool result = connect(mNetworkAccessManager, SIGNAL(finished(QNetworkReply*)), this, SLOT(requestFinished(QNetworkReply*))); Q_ASSERT(result); Q_UNUSED(result); json = new QFile("data/file.json"); } void MyApp::init(){ QNetworkRequest request = QNetworkRequest(); // i call some service here mNetworkAccessManager->get(request); } void MyApp::requestFinished(QNetworkReply *reply){ qDebug() << reply->error(); qDebug() << reply->errorString(); if (reply->error() == QNetworkReply::NoError) { qDebug() << "No error"; QByteArray data = reply->readAll(); if (!json->open(QIODevice::ReadWrite)) { qDebug() << "Failed to open file"; return; } json->write(data); bb::data::JsonDataAccess jda; QVariantMap results = jda.loadFromBuffer(data).toMap(); QVariantList lst = jda.loadFromBuffer(data).toList(); GroupDataModel *m = new GroupDataModel(); m->insertList(lst); m->setGrouping(ItemGrouping::None); if(list_view) list_view->setDataModel(m); }else{ showDialog("Boo",reply->errorString()); } } MyApp.hpp
// Tabbed pane project template #ifndef MyApp_HPP_ #define MyApp_HPP_ #include
#include #include #include #include #include namespace bb { namespace cascades { class Application; } } namespace bb { namespace data { class Application; } } /*! * @brief Application pane object * *Use this object to create and init app UI, to create context objects, to register the new meta types etc. */ class MyApp: public QObject { Q_OBJECT public: MyApp(bb::cascades::Application *app); virtual ~MyApp() { } Q_INVOKABLE void init(); private slots: void requestFinished(QNetworkReply *reply); private: QNetworkAccessManager *mNetworkAccessManager; QNetworkRequest *request; QFile *json; bb::cascades::ListView *list_view; }; #endif /* MyApp_HPP_ */ hand. QML
import bb.cascades 1.0 Page{ Container { background: Color.White ListView { id: listView preferredHeight: maxHeight objectName: "listView" listItemComponents: [ ListItemComponent { type: "item" Container { Container { Label { text: ListItemData.id } } } } ] onTriggered: { console.log("selected_index: " + indexPath) } horizontalAlignment: HorizontalAlignment.Center verticalAlignment: VerticalAlignment.Center } } }
Question 2:
How reference to the ListView object with the name "listView" in different parts of the MyApp.cpp file? Is there anything else I should add to the header file to make the accessible listView?
Question 3:
What happens when you call the clear() method? How the data model is affected? How the user interface is affected? What happens in memory?
Question 4:
How do you verify that the data in the list has been deleted so that you can go ahead and fills again with new data? What is the cheque that I perform?
I would also like to know how you manage multiple views of lists and data sources in your applications. Best practices or ideas?
Thank you
I was able to clear the listview with the following code, if anyone is interested.
listView.dataModel = null
The dataModel must be set to "null".
-
Highlight the item selected in the ListView
Hello guys,.
I have a list view and you want to highlight the element select when I click on it, for all clicked items.Thank you.
esam_tec wrote:
Hello guys,.
I have a list view and you want to highlight the element select when I click on it, for all clicked items.Thank you.
There are different ways to do
eg.:
in your container of ListItem:
background: ListItem.selected || ListItem.active ? Color.Magenta : Color.Transparent
in your onTriggered of the ListView:
// select line myListView.select(indexPath, true)
Remember, if your work has been done:
// clear the selection myListView.clearSelection()
-
Change the background color for a selected item in a ListView?
Hello
No idea how to change the color of tbackground of a ListView selected item to blue for a different color?
I tried wrapping the ListView in a container, then by changing the background color of the container, but it does not work. And ListView, nor the ListItemComponent takes a background attribute.
Thank you
Oh, I did that last night.
Thus, in the container for StandardItem, add this line:background: ListItem.selected || ListItem.active ? Color.create("#4D9EC9") : Color.Transparent
and onTriggerred of the signal, add two lines:
// for highlighting listView.select(indexPath, true); // for clearing highlight listView.clearSelection();
PS: listView is the id of the ListView
ListView { id: listView ....
-
Mark the selected item in a listview
Hello experts,
So, I need to show a selected list item by placing a checkmark next to him (into the cell). What a cell can be selected. So does anyone have a solution that can be shared? Or some advise how this can be done properly. I would be very grateful.
Hello everyone.
I did the following. In onTriggered in a listview control, I've added these 2 lines:
clearSelection(); select(indexPath, true);
That's all.
-
How to refresh the Listview after adding a new item
Hello
I have the following list:
ListView { id: channelsList dataModel: categoryModel listItemComponents: [ ListItemComponent { type: "item" StandardListItem { title: ListItemData.name // Channel name imageSource: ListItemData.imageFile status: ListItemData.id id: channelItemId contextActions: [ ActionSet { //title: contentView.title ActionItem { title: "Add to Favorites" onTriggered: { console.log(ListItemData.id + " will be added to the Favorites"); //categoryModel.addFavorite(ListItemData.name, ListItemData.imageFile, ListItemData.id); channelItemId.ListItem.view.viewTriggered(ListItemData.name, ListItemData.imageFile, ListItemData.id); } } } ] } } ] onTriggered: { var chosenChannel = dataModel.data(indexPath); console.log("indexPath: " + indexPath); var playingPage = playpagedef.createObject(); playingPage.chname = chosenChannel.name; playingPage.cid = chosenChannel.id; playingPage.init(); Qt.nav.push(playingPage); } attachedObjects: [ // The bucket categoryModel is a non visible object so it is set up as an attached object. // The categoryModel itself is a QListDataModel defined in categorymodel.h and registered // as a type in the creation of the application. CategoryModel { id: categoryModel // The path to the JSON file with initial data, this file will be moved to // the data folder on the first launch of the application (in order to // be able to get write access). jsonAssetPath: "models/channels.json" // The filtering is initially set to "Category 1" to show category channels filter: label.text }, ComponentDefinition { id: playpagedef source: "PlayingPage.qml" } ] function viewTriggered(name, imageFile, id) { categoryModel.addFavorite(name, imageFile, id); categoryModel.clear(); } }
and the categoeymodel.h is as follows:
#ifndef _CATEGORYMODEL_H #define _CATEGORYMODEL_H #include
#include #include #include using namespace bb::data; // The category categoryModel is based on the QListDataModel template, which in turn // implements the abstract DataModel class. typedef bb::cascades::QListDataModel CategoryListModel; /* CategoryModel Description: * * CategoryModel class for the Category List application, the data categoryModel * reads and write from a JSON file that keeps all item data * for the list. */ class CategoryModel: public CategoryListModel { Q_OBJECT Q_PROPERTY(QString filter READ filter WRITE setFilter NOTIFY filterChanged) Q_PROPERTY(QString jsonAssetPath READ jsonAssetPath WRITE setJsonAssetPath NOTIFY jsonAssetPathChanged) public: /** * Constructor that sets up the recipe * @param parent The parent Container, if not specified, 0 is used */ CategoryModel(QObject *parent = 0); ~CategoryModel(); QString filter(); void setFilter(const QString filter); QString jsonAssetPath(); void setJsonAssetPath(const QString jsonAssetPath); signals: void filterChanged(QString filter); void jsonAssetPathChanged(QString jsonAssetPath); public slots: void addFavorite(QString channelName, QString channelImageFile, int channelId); private: bool jsonToDataFolder(); // Property variables QString mFilter; QString mJsonAssetsPath; QString mJsonDataPath; // A list containing all data read from the JSON file QVariantList mData; //Invocation variables bb::cascades::Invocation* mInvocation; }; #endif // ifndef _CATEGORYMODEL_H My problem is that the listview is not get automatically updated when a new item is added to the datamodel (a favorite channel is added). I have to exit the application and restart to see the updated list.
categoryModel.addFavorite(name, imageFile, id); categoryModel.clear();
categoryModel.clear ();
does not work. I get:
Asset: / / / hand. QML:180: TypeError: result of expression 'categoryModel.clear' [undefined] is not a function.
I would like to know how to achieve using approach "more correct".
QListDataModel does not expose its internal storage directly. It is possible to reconstruct the map by performing an iteration in a loop (with the help of data() and size() methods), the dataModel entries:
http://developer.BlackBerry.com/Cascades/reference/bb__cascades__qlistdatamodel.html
but I don't see how this could help. If the filtered data is changed, it must be merged with the original sort data.
Why the original approach has not worked?
I could not understand from the description appearance of the interface user, please post a screenshot if possible.
-
How to select and move more than one bookmark at a time?
Shift + click selects multiple items that are next to each other in a list, because the items open in firefox before that happens.Glad it worked for you. Thanks for posting back.
-
original title: error number: 0x800CCCD2
Can anyone help with this issue:
Header download for the 'sent items' folder did not complete. Cannot select "Sent items" on the IMAP server. You could try refreshing your folder list to synchronize with the IMAP server. Account: 'AOL', server: 'imap.aol.com', Protocol: IMAP, server response: "SELECT failed", Port: 143, secure (SSL): no, error number: 0x800CCCD2
Thank you!
Hi again Steve - I have spent a lot of time on the phone this morning to Dell technical support. the accompaniment of the victim and I did a lot of fiddling around with various options of Windows Mail and I don't know exactly what we were doing, but the issue seems to have resolved itself! Thank you for your time and trouble.
Best, Douglas
-
"Unable to select"Sent items"on the IMAP server.
I am trying to set up Windows Live Mail, but when I send a message, I get the error message "Cannot send or receive messages on behalf of Aol." Header for the "sent items" download did not complete. Cannot select "Sent items" on the IMAP server. Try to update the list of folders, and then try again. "I can't understand what they mean on the"folder list ". What should I do? Thank you.
Thank you for visiting the Microsoft Answers site.
The question you have posted is related to Windows Live Mail and would be better suited to the Windows Live community. Please visit the link below to find a community that will support what ask you:http://windowslivehelp.com/product.aspx?ProductID=15 -
How can I add an item to the ListView
I have a very basic question. I would like to read data from a file xml in the ListView, then add an item to the list and store it in the file xml again. How can I do?
{To ListView
ID: listViewCustomUrl
objectName: "listViewCustom."
dataModel: {XmlDataModel}
Source: "dataCustom.xml".
}
}
First of all, your xml file must be in a read/write file in your directory app, say data, for example.
Then, you can use a DataModel in memory (GroupDatModel), fill it with XMLcontents, a number of updates for this model, and then when your output or with an option to be persisted in the xml file.
See the example of persistent objects in http://blackberry.github.io/Cascades-Samples/persistentobjects.html
-
Impossible to select multiple items in the list box
I use Acrobat 9.0 Standard.
I added a list box in the PDF format and I want to give people the ability to select multiple items in the drop-down list. In properties, on the Options tab, I chose 'multiple choice '. But I am unable to make multiple selections despite this. It still only allows me to make a choice.
Any ideas? Is there some other step I'm missing?
I need help with this ASAP for my business - any suggestions are appreciated!
Thank you
It should do that if you hold down the SHIFT key.
-
I need help, select several items in my Panel of DOM, for some reason, using the SHIFT key does not work.
I found the answer, apparently everything I had to do has been updated to the latest version of dreamweaver cc 2015.2. The Shift function is something new added in the update.
-
How to clear the selection on an ADF faces table?
I thought I'd call setSelectedRowKeys (null) gives the desired result. However it is not. Can you think of a reason why it would not clear the selection? What should I do?
Here's the specific scenario:
I have a two ADF faces table tell A and B with a column each and both of them have simple lines and their rowSelection property is set to "single". Now the requirement is when a line is selected from A, it must clear all selections of B and vice versa. So I registered selectionListeners on the tables and the code that is running inside this method does the following for the table has not been selected :
tablenNotSelected.setSelectedRowKeys (null);
lets say, I click on a first line, then on a row of B. So far so good. So if I click on the A, the control won't to the SelectionListener method. I think that SelectionEvent isn't getting fired no doubt because the previous selection has not been erased.
JDev version I use is JDEVADF_MAIN_GENERIC_121113.1351.6521
What I'm missing here?
Published by: 981525 on January 23, 2013 08:20try to add addPartialTarget (table) after you turn off the selection.
-
Get the selected value of a select list item in a tabular presentation.
Hi, I have a tabular form and I'm trying to get the selected value of a select list item and store the selected value in a page element hidden elsewhere on the form of tables, so I can use this value.
I already have something similar to the input on the tabular presentation elements.
Get the initial values
var line = $x_UpTill (this.triggeringElement, 'TR');
numberOfItems var = $(' input [nom = "f12"]', ligne) [0];
numberOfItems = 123456.123
What I want to do is soemthing similar as above but capture the value of a select element in tabular form. I thought I could do something like:
Get the selected value
var line = $x_UpTill (this.triggeringElement, 'TR');
numberOfItems var = $('selected [name = "f08"] .val ()', line) [0];
But this method leaves the as undefined var numberOfItems.
Please help me to find a way to identify the item 'select' in the tabular form called "f08" and get this value.
I am a newbie to jQuery selectors etc...
Thank you.Strange that you do not get an error when you run your 2nd selector.
In any case for this kind of thing, see the HTML code of your tabular form and tell us what triggers, the element can be useful. Or better create an example at apex.oracle.com.
In any case, I see two errors:
(1) is there any html element "not selected" instead, the LOV in the APEX element has the select tag
(2) you can not write a. val() inside a selector that you must place it after your selection.So I'd like to rewrite your code to:
var line = $x_UpTill (this.triggeringElement, 'TR');
numberOfItems = $("select_[nom_="f08"]",_row).val () var [0]; -
Help with dynamic action and the selection list item
G ' Day Apex gurus.
I have problems trying to achieve to trigger the Help window from an element automatically select. A Help window is triggered when it is clicked on the label of an item, but my customer wants to be triguered automatically as soon as the user clicks to view the options in the select list.
I think I should be able to do with dynamic actions but I can't function.
I know when someone clicks on the label of the item selection list trigger this JavaScript
JavaScript:popupFieldHelp('277938589795252851','1545903379570909')
So I want to trigger the javascript also when the user click on the item selection list and pull down the options and for that I think that the dynamic action is the way to go, but I can't do things.
That's what I have to do:
I created a dynamic option as follows:
Name: test
Sequence: 30
Even: click
Selection type: product (s)
Article (s): P1_RATING <-a selection list item
Condtion: - no requirement.
Real Actions
Sequence: 10
Action: Run the JavaScript Code
Fires when the result of the event is: true
Fire on loading the page: checked
Code: javascript:popupFieldHelp('277938589795252851','1545903379570909')
Thank you anyone who can tell me what I'm doing wrong here or bring a solution to my problem to trigger the Help window from an element automatically select.
Kind regards
CarlosHi Carlos,
I've set up a test case of exactly in the same way and it worked fine for me. I've created a page element called P1_DA_DEMO and added some values of the static selection list, then added a help text. I used the settings are lower, I suggest you try again, but also make sure that you have no other Javascript errors on the page. Use a tool like firebug to check.
Name: Action Dynamics demo
Sequence: 10
Even: click
Selection type: product (s)
Product (s): P1_DA_DEMO<- a="" selection="" list="">->
Condtion: - no requirement.Real Actions
Sequence: 10
Action: Run the JavaScript Code
Fires when the result of the event is: true
Fire on loading the page: unchecked
Code: javascript:popupFieldHelp('277938589795252851','1545903379570909')Scope of the event set a Bind s.
Thank you
Paul
-
Clear the Cache of some items when clicking on tab
I found this in the forms:
If you want to clear the cache of the page when the user clicks on the tab, this should be the work of this page. You can create an after - submit processes (before the calculations and validations) with:
apex_application.clear_page_cache(:APP_PAGE_ID);
However, I need to clear some items not everything on the page. I tried replacing it with apex_application.clear_item_cache(:APP_ITEM); but it does not work. What is the process that clears the cache of apex_application point?Is the page you click away a shipment execution when you click away? If so, I'd like to try one of these in a branch of the page.
Suppose you are on page 1 and clicking on page 2. To Page 2, let's say you want to keep the cache on the components P2_A, P2_B, but clears the cache for P2_C.
In your page (defined on page 1) branch that is triggered to take you to page 2, try one of these:
Clear the cache on the page: 2
Place these items: P2_A, P2_B
With these values: & P2_A, & P2_B.That should clear all of 2 but A reset and B back to their current values to the cache before it is cleared.
If not, try this:
Clear the cache on the page: (do not put anything here)
Place these items: P2_C
With these values: (do not put anything here)Who should (I think) only to erase P2_C
Maybe you are looking for
-
Why my Mac under 10.12 only sleeps for 2 seconds?
I installed Mac OS Sierra tonight. Whenever I put it to sleep under the Apple Menu, he sleeps for a second or two and then the screen wakes up again. My system has never done that before Sierra. How should I do?
-
Only get a gray screen after upgrade of El Capitan. What can I do?
I tried to install an upgrade, but only now have a gray screen. The installation seems to have stopped half way through.
-
Accident of attachments to iCloud mail.app (sending)
Try using the mailbox feature seems constantly and reproducible Mail.app crash for me. I can drag and drop any attachment to a new message as such: But the second that I click on the button send in the upper left corner to corner, every time, mail.ap
-
can get my email from the 23/4 on incredimail
Cannot get my emails on incredimail since April 23, 2012
-
Error code 80076043, KB2658846
I get the error code 80070643 when you try to install KB2658846. I'm using Vista (x 64) Home Premium