Search Results

Search found 16894 results on 676 pages for 'private members'.

Page 642/676 | < Previous Page | 638 639 640 641 642 643 644 645 646 647 648 649  | Next Page >

  • 1) PasswordResets emails user when requesting password reset

    - by Surge Pedroza
    I've been trying to add a password reset for users that forget their password. The users clicks on forgot password? on sign up page. Then the user types their email and clicks reset password, which creates a token and sends an email with a link to reset their password. For the most part, it was working well, and then it suddenly stopped working. When a user clicks password reset, it brings up the error message: Password cant be blank, password is too short(6 min) Ran into this error in video 275 How I Test. on 11:20 Failure/Error: click_button "Reset Password" ActiveRecord::RecordInvalid: Validation failed: Password can't be blank, Password is too short (minimum is 6 characters), Password confirmation can't be blank # ./app/models/user.rb:30:in send_password_reset' # ./app/controllers/password_resets_controller.rb:7:increate' # (eval):2:in click_button' # ./spec/requests/password_resets_spec.rb:9:inblock (2 levels) in ' Finished in 13.66 seconds 95 examples, 1 failure This is some of the code being used. user.rb # == Schema Information # # Table name: users # # id :integer not null, primary key # name :string(255) # email :string(255) # created_at :datetime not null # updated_at :datetime not null # class User < ActiveRecord::Base attr_accessible :name, :email, :password, :password_confirmation has_secure_password before_save { |user| user.email = email.downcase } before_save :create_remember_token validates :name, presence: true, length: { maximum: 50 } VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i validates :email, presence: true, format: { with: VALID_EMAIL_REGEX }, uniqueness: { case_sensitive: false } validates :password, presence: true, length: { minimum: 6 } validates :password_confirmation, presence: true def send_password_reset generate_token(:password_reset_token) self.password_reset_sent_at = Time.zone.now save! UserMailer.password_reset(self).deliver end def generate_token(column) begin self[column] = SecureRandom.urlsafe_base64 end while User.exists?(column => self[column]) end def self.search(search) if search find(:all, :conditions => ['name LIKE ?', "%#{search}%"]) else find(:all) end end private def create_remember_token self.remember_token = SecureRandom.urlsafe_base64 end end password_resets_controller.rb class PasswordResetsController < ApplicationController def new end def create user = User.find_by_email(params[:email]) user.send_password_reset redirect_to root_url, :notice => "Email sent with password reset instructions." end def edit @user = User.find_by_password_reset_token!(params[:id]) end end new.html.erb <h1>Reset Password</h1> <%= form_tag password_resets_path, :method => :post do %> <div class="field"> <%= label_tag :email %> <%= text_field_tag :email, params[:email] %> </div> <div class="actions"><%= submit_tag "Reset Password" %></div> <% end %>

    Read the article

  • Flickering Image in Java?

    - by Noah Cagle
    OK so I am coding a game right now to prepair for Ludum Dare SharkJam, and I am using a new method for programming, because the last method I had crashes my PC, so this one should work. Well it does work and all, better too, but the images that I put in it flicker. Here is the whole main class (where the images are drawn) package me.NoahCagle.watermaze; import java.awt.Color; import java.awt.Graphics; import java.awt.Image; import java.awt.image.BufferedImage; import javax.swing.JFrame; import me.NoahCagle.watermaze.entity.EntityShark; import me.NoahCagle.watermaze.entity.Player; import me.NoahCagle.watermaze.input.Keys; import me.NoahCagle.watermaze.map.Map; public class Game extends JFrame { private static final long serialVersionUID = 1L; Map map = new Map(0, 0); Player player = new Player(50, 30); static EntityShark shark = new EntityShark(400, 400); public Image dbImage; public Game() { setSize(800, 600); setDefaultCloseOperation(EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); setTitle("Water Maze"); setResizable(false); setBackground(Color.blue); addKeyListener(new Keys()); } public static void main(String[] args) { new Game(); Thread s = new Thread(shark); s.start(); } public void paint(Graphics g) { dbImage = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_RGB); g.drawImage(dbImage, map.x, map.y, null); g.drawImage(player.player, player.x, player.y, this); g.drawImage(shark.shark, shark.x, shark.y, this); repaint(); } } What this code does for me is makes the Images work correctly, just flickering, alot. Can anyone help me with my issue? EDIT: I think it has something to do with where I call the repaint method in the paint method, so look there.

    Read the article

  • How to use method hiding (new) with generic constrained class

    - by ongle
    I have a container class that has a generic parameter which is constrained to some base class. The type supplied to the generic is a sub of the base class constraint. The sub class uses method hiding (new) to change the behavior of a method from the base class (no, I can't make it virtual as it is not my code). My problem is that the 'new' methods do not get called, the compiler seems to consider the supplied type to be the base class, not the sub, as if I had upcast it to the base. Clearly I am misunderstanding something fundamental here. I thought that the generic where T: xxx was a constraint, not an upcast type. This sample code basically demonstrates what I'm talking about. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace GenericPartialTest { class ContextBase { public string GetValue() { return "I am Context Base: " + this.GetType().Name; } public string GetOtherValue() { return "I am Context Base: " + this.GetType().Name; } } partial class ContextSub : ContextBase { public new string GetValue() { return "I am Context Sub: " + this.GetType().Name; } } partial class ContextSub { public new string GetOtherValue() { return "I am Context Sub: " + this.GetType().Name; } } class Container<T> where T: ContextBase, new() { private T _context = new T(); public string GetValue() { return this._context.GetValue(); } public string GetOtherValue() { return this._context.GetOtherValue(); } } class Program { static void Main(string[] args) { Console.WriteLine("Simple"); ContextBase myBase = new ContextBase(); ContextSub mySub = new ContextSub(); Console.WriteLine(myBase.GetValue()); Console.WriteLine(myBase.GetOtherValue()); Console.WriteLine(mySub.GetValue()); Console.WriteLine(mySub.GetOtherValue()); Console.WriteLine("Generic Container"); Container<ContextBase> myContainerBase = new Container<ContextBase>(); Container<ContextSub> myContainerSub = new Container<ContextSub>(); Console.WriteLine(myContainerBase.GetValue()); Console.WriteLine(myContainerBase.GetOtherValue()); Console.WriteLine(myContainerSub.GetValue()); Console.WriteLine(myContainerSub.GetOtherValue()); Console.ReadKey(); } } }

    Read the article

  • How to get latest files in C#

    - by Newbie
    I have some files with same name but with different dates. Basically we are finding the files with most recent dates The file patterns are <FileNames><YYYYMMDD><FileExtension> e.g. test_20100506.xls indicates <FileNames> = test_ <YYYYMMDD> = 20100506 <FileExtension> = .xls Now in the source folder, the files are standardization_20100503.xls, standardization_20100504.xls, standardization_20100305.xls, replacement_20100505.xls As can be seen that, standardization_.xls are 3 in numbers but replacement_.xls is only 1. The output will be a list of file names whose content will be standardization_20100504.xls and replacement_20100505.xls Because among all the standardization_.xls is the most recent one and replacement_.xls is also the same. I have tried with my own logic but somehow failed. My idea is as under private static void GetLatestFiles(ref List<FileInfo> validFiles) { List<FileInfo> validFilesTemp = new List<FileInfo>(); for (int i = 0; i < validFiles.Count; i++) { for (int j = i+1; j < validFiles.Count; j++) { string getFileTextX = ExtractText(validFiles[i].Name); string getFileTextY = ExtractText(validFiles[j].Name); if (getFileTextX == getFileTextY) { int getFileDatesX = Convert.ToInt32(ExtractNumbers(validFiles[i].Name)); int getFileDatesY = Convert.ToInt32(ExtractNumbers(validFiles[j].Name)); if (getFileDatesX > getFileDatesY) { validFilesTemp.Add(validFiles[i]); } else { validFilesTemp.Add(validFiles[j]); } } } } validFiles.Clear(); validFiles = validFilesTemp; } The ExtractNumbers is: public static string ExtractNumbers(string expr) { return string.Join(null, System.Text.RegularExpressions.Regex.Split(expr, "[^\\d]")); } and the ExtractText is public static string ExtractText(string expr) { return string.Join(null, System.Text.RegularExpressions.Regex.Split(expr, "[\\d]")); } I am using c#3.0 and framework 3.5 Help needed .. it's very urgent Thanks .

    Read the article

  • setting value to a parameter - always saying that it is null REALLY NEED INPUT

    - by Amina
    So I have this schedule visit page with two groups. Group 1 contains a list of: Cases. Group 2 contains a list of: Parties. each group has a checkboxes next to its item for the user to select. My Issue when i select a case and/or a party and save -- then go to the edit page of the visit i just saved and only my selected case is checked and the party i selected is not checked. After debugging i realized that the partyId is not being saved properly during the create page and thus not showing as selected or saved on the edit page. I really need help on how to properly save the party selected and setting for it a value from the parameter. Here is my code of what i have for saving a case and would like to know how to properly save with party. Controller [HttpPost] [ValidateInput(false)] public ActionResult Create(VisitViewModel viewModel, Guid[] associatedCasesSelected, Guid[] selectedParties) { if (!ModelState.IsValid) { viewModel.Time = _timeEntryHelper.Value; AddLookupsToViewModel(viewModel); return View(viewModel); } var visitEntry = Mapper.Map<VisitViewModel, VisitEntry>(viewModel); ... viewModel.CasePartyIds = selectedParties; try { _visitEntryService.Create(visitEntry, associatedCasesSelected); this.FlashInfo(string.Format(Message.ConfirmationMessageCreate, Resources.Entities.Visit.EntityName)); } catch (RulesException ex) { ex.CopyTo(ModelState); } if (ModelState.IsValid) return RedirectToAction("Edit", "Case", new { caseId = viewModel.CaseId }); AddLookupsToViewModel(viewModel); return View(viewModel); } VisitEntryService public void Create(VisitEntry visitEntry,IList<Guid>caseIds) { EnsureValid(visitEntry); _visitEntryRepository.Save(visitEntry); caseIds = AddCurrentCaseToCases(visitEntry.CaseId, caseIds); foreach (var caseId in caseIds.Distinct()) { var visit = new Visit {CaseId = caseId, VisitEntryId = visitEntry.VisitEntryId}; _visitService.Create(visit); } } AddCurrentCaseToCases private static IList<Guid>AddCurrentCaseToCases(Guid caseId, IEnumerable<Guid>caseIds) { var cases = new List<Guid>(); if (caseIds != null) { cases.AddRange(caseIds); if(!caseIds.Contains(caseId)) cases.Add(caseId); } else cases.Add(caseId); return cases; } VisitService public Visit Get(Guid visitId) { return DataContext.Visits.SingleOrDefault(v => v.VisitId == visitId); } public void Save(Visit visit) { if(visit.VisitId == Guid.Empty) { visit.VisitId = Guid.NewGuid(); DataContext.Visits.InsertOnSubmit(visit); } else { var currentVisit = Get(visit.VisitId); if (currentVisit == null) throw RepositoryExceptionFactory.Create("Visit", "VisitId"); } DataContext.SubmitChanges(); } Any TIPS or IDEAS is greatly appreciated at this time :) The entitiy for the parties will be VisitEntryParty

    Read the article

  • A question about making a C# class persistant during a file load

    - by Adam
    Apologies for the indescriptive title, however it's the best I could think of for the moment. Basically, I've written a singleton class that loads files into a database. These files are typically large, and take hours to process. What I am looking for is to make a method where I can have this class running, and be able to call methods from within it, even if it's calling class is shut down. The singleton class is simple. It starts a thread that loads the file into the database, while having methods to report on the current status. In a nutshell it's al little like this: public sealed class BulkFileLoader { static BulkFileLoader instance = null; int currentCount = 0; BulkFileLoader() public static BulkFileLoader Instance { // Instanciate the instance class if necessary, and return it } public void Go() { // kick of 'ProcessFile' thread } public void GetCurrentCount() { return currentCount; } private void ProcessFile() { while (more rows in the import file) { // insert the row into the database currentCount++; } } } The idea is that you can get an instance of BulkFileLoader to execute, which will process a file to load, while at any time you can get realtime updates on the number of rows its done so far using the GetCurrentCount() method. This works fine, except the calling class needs to stay open the whole time for the processing to continue. As soon as I stop the calling class, the BulkFileLoader instance is removed, and it stops processing the file. What I am after is a solution where it will continue to run independently, regardless of what happens to the calling class. I then tried another approach. I created a simple console application that kicks off the BulkFileLoader, and then wrapped it around as a process. This fixes one problem, since now when I kick off the process, the file will continue to load even if I close the class that called the process. However, now the problem I have is that cannot get updates on the current count, since if I try and get the instance of BulkFileLoader (which, as mentioned before is a singleton), it creates a new instance, rather than returning the instance that is currently in the executing process. It would appear that singletons don't extend into the scope of other processes running on the machine. In the end, I want to be able to kick off the BulkFileLoader, and at any time be able to find out how many rows it's processed. However, that is even if I close the application I used to start it. Can anyone see a solution to my problem?

    Read the article

  • [Delphi] open text files in one application

    - by Remus Rigo
    hi all I want to write an text editor and to assign the txt files to it. My problem is that I want to have only one instance running and when a new file is opened to send the filename to the first app that is already running... (I want to do this using mutex). Here is a small test DPR looks like this uses Windows, Messages, SysUtils, Forms, wndMain in 'wndMain.pas' {frmMain}; {$R *.res} var PrevWindow : HWND; S : string; CData : TCopyDataStruct; begin PrevWindow := 0; if OpenMutex(MUTEX_ALL_ACCESS, False, 'MyMutex') <> 0 then begin repeat PrevWindow:=FindWindow('TfrmMain', nil); until PrevWindow<>Application.Handle; if IsWindow(PrevWindow) then begin SendMessage(PrevWindow, WM_SYSCOMMAND, SC_RESTORE, 0); BringWindowToTop(PrevWindow); SetForegroundWindow(PrevWindow); if FileExists(ParamStr(1)) then begin S:=ParamStr(1); CData.dwData:=0; CData.lpData:=PChar(S); CData.cbData:=1+Length(S); SendMessage(PrevWindow, WM_COPYDATA, 0, DWORD(@CData) ); end; end; end else CreateMutex(nil, False, 'MyMutex'); Application.Initialize; Application.CreateForm(TfrmMain, frmMain); Application.Run; end. PAS: type TfrmMain = class(TForm) memo: TMemo; private procedure WMCopyData ( var msg : TWMCopyData ) ; message WM_COPYDATA; public procedure OpenFile(f : String); end; var frmMain: TfrmMain; implementation {$R *.dfm} procedure TfrmMain.WMCopyData ( var msg : TWMCopyData ) ; var f : String; begin f:=PChar(msg.CopyDataStruct.lpData); //ShowMessage(f); OpenFile(f); end; procedure TfrmMain.OpenFile(f : String); begin memo.Clear; memo.Lines.LoadFromFile(f); Caption:=f; end; this code should be ok, but if i want to open a text file (from the second app), the first app receives a message like this: thanks

    Read the article

  • What should I put into classes and what stuff I shouldnt?

    - by jpjp
    I am learning about classes right now in PHP and their examples are like.. class table { //makes a table private $tag ; function Begin($border=0, $align="center", $width='100%', $cellpadding=2, $cellspacing=2, $class='', $id='', $bgcolor='', $style='') { $this->tag = '<table ' ; if ($align) $this->tag .= 'align="' . $align . '" ' ; if ($width) $this->tag .= 'width="' . $width . '" ' ; if ($border > 0) $this->tag .= 'border="' . $border . '" ' ; if ($cellpadding > 0) $this->tag .= 'cellpadding="' . $cellpadding . '" ' ; if ($cellspacing > 0) $this->tag .= 'cellspacing="' . $cellspacing . '" ' ; if ($class) $this->tag .= 'class="' . $class . '" ' ; if ($id) $this->tag .= 'id="' . $id . '" ' ; if ($bgcolor) $this->tag .= 'bgcolor="' . $bgcolor . '" ' ; if ($style) $this->tag .= 'style="' . $style . '" ' ; $this->tag .= ">" ; return $this->tag ; } Then you just instantiate it and make a table by $table =new table; $table->$table($border=2, $align='center', etc); Should I be coding like this where html, css are in classes? i feel making tables and forms this way is more confusing then actually just typing . Should I only put like validation, getting data from db, and the logic stuff in classes? What should I use classes for and not?

    Read the article

  • Is this a good approach to dealing with tagging?

    - by Mel
    Can this code be optimized or re-factored? Is this an optimal approach to tagging? The following code is a callback in my posts model. It creates a record that associates a tag with a post in a QuestionsTags joiner table. When necessary, if a given tag does not already exist in the tags table, the function creates it, then uses its id to create the new record in the QuestionsTags table. The difficulty with this approach is the QuestionsTags table depends on data in the tags table which may or may not exist. The function assumes the following tables: tags(id, tagName), posts(tags) // Comma delimited list questionsTags(postId, tagId) The idea is to loop over a delimited list of tags submitted with a post and check to see if each tag already exists in the tags table If tag exists: Check to see if there's already a QuestionTag record for this post and this tag in the QuestionTags table. If yes, do nothing (the association already exists) If no, create a new QuestionTag record using the id of the existing tag and the postId If tag does not already exist: Create the new tag in the tags table Use its id to create a new QuestionsTags record Code /** * @hint Sets tags for a given question. **/ private function setTags() { // Loop over the comma and space delmited list of tags for (local.i = 1; local.i LTE ListLen(this.tags, ", "); local.i = (local.i + 1)) { // Check if the tag already exists in the database local.tag = model("tag").findOneByTagName(local.i); // If the tag exists, look for an existing association between the tag and the question in the QuestionTag table if (IsObject(local.tag)) { local.questionTag = model("questionTag").findOneByPostIdAndTagId(values="#this.postId#,#local.tag.id#"); // If no assciatione exists, create a new QuestionTag record using the tagId and the postId if (! IsObject(local.questionTag)) { local.newQuestionTag = model("questionTag").new(postId = this.id, tagId = local.tag.id); // Abort if the saving the new QuestionTag is unsuccesful if (! local.newQuestionTag.save()) { return false; } } } // If the tag does not exist create it else { local.newTag = model("tag").new(tagName = local.i, userId = this.ownerUserId); // Abort if the the new tag is not saved successfully if (! local.newTag.save()) { return false; } // Otherwise create a new association in the QuestionTags table using the id of the newly created tag and the postId local.newQuestionTag = model("questionTag").new(postId = this.id, tagId = local.newTag.id); // Abort if the new QuestionTag does not save correctly if (! local.newQuestionTag.save()) { return false; } } } } FYI: I'm using CFWheels in my application, which explains the ORM functions used.

    Read the article

  • How to write php code to input jsonstring and insert to sql server

    - by Romi
    i am trying to OUTPUT a Json String from the phone and to get it uploaded to the sql server i have. I Do not know how to get the output Json and write the php code... i tried many methods but couldnt find a solution. public void post(String string) { HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost( "http://www.hopscriber.com/xoxoxox/testphp.php"); try { List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); nameValuePairs.add(new BasicNameValuePair("myJson", string)); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = httpclient.execute(httppost); String str = inputStreamToString(response.getEntity().getContent()) .toString(); Log.w("SENCIDE", str); } catch (Exception e) { Toast.makeText(getBaseContext(), "notwork", Toast.LENGTH_LONG) .show(); } } private Object inputStreamToString(InputStream is) { // TODO Auto-generated method stub String line = ""; StringBuilder total = new StringBuilder(); // Wrap a BufferedReader around the InputStream BufferedReader rd = new BufferedReader(new InputStreamReader(is)); // Read response until the end try { while ((line = rd.readLine()) != null) { total.append(line); } } catch (IOException e) { e.printStackTrace(); } // Return full string return total; } it outputs a json string as [myJson=[{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"org.siislab.tutorial.permission.READ_FRIENDS","level":"Normal"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"org.siislab.tutorial.permission.WRITE_FRIENDS","level":"Normal"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"org.siislab.tutorial.permission.FRIEND_SERVICE","level":"Normal"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"org.siislab.tutorial.permission.FRIEND_NEAR","level":"Dangerous"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"org.siislab.tutorial.permission.BROADCAST_FRIEND_NEAR","level":"Normal"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"android.permission.RECEIVE_BOOT_COMPLETED","level":"Normal"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"android.permission.READ_CONTACTS","level":"Dangerous"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"android.permission.ACCESS_FINE_LOCATION","level":"Dangerous"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"android.permission.WRITE_EXTERNAL_STORAGE","level":"Dangerous"},{"name":"FriendTracker","user":"amjgp000000000000000","pack":"org.siislab.tutorial.friendtracker","perm":"android.permission.READ_PHONE_STATE","level":"Dangerous"},{"name":"Tesing","user":"amjgp000000000000000","pack":"com.example.tesing","perm":"null","level":"null"},{"name":"Action Bar","user":"amjgp000000000000000","pack":"name.brucephillips.actionbarexample","perm":"null","level":"null"},.......

    Read the article

  • C++ class is not recognizing string data type

    - by reallythecrash
    I'm working on a program from my C++ textbook, and this this the first time I've really run into trouble. I just can't seem to see what is wrong here. Visual Studio is telling me Error: identifier "string" is undefined. I separated the program into three files. A header file for the class specification, a .cpp file for the class implementation and the main program file. These are the instructions from my book: Write a class named Car that has the following member variables: year. An int that holds the car's model year. make. A string that holds the make of the car. speed. An int that holds the car's current speed. In addition, the class should have the following member functions. Constructor. The constructor should accept the car's year and make as arguments and assign these values to the object's year and make member variables. The constructor should initialize the speed member variable to 0. Accessors. Appropriate accessor functions should be created to allow values to be retrieved from an object's year, make and speed member variables. There are more instructions, but they are not necessary to get this part to work. Here is my source code: // File Car.h -- Car class specification file #ifndef CAR_H #define CAR_H class Car { private: int year; string make; int speed; public: Car(int, string); int getYear(); string getMake(); int getSpeed(); }; #endif // File Car.cpp -- Car class function implementation file #include "Car.h" // Default Constructor Car::Car(int inputYear, string inputMake) { year = inputYear; make = inputMake; speed = 0; } // Accessors int Car::getYear() { return year; } string Car::getMake() { return make; } int Car::getSpeed() { return speed; } // Main program #include <iostream> #include <string> #include "Car.h" using namespace std; int main() { } I haven't written anything in the main program yet, because I can't get the class to compile. I've only linked the header file to the main program. Thanks in advance to all who take the time to investigate this problem for me.

    Read the article

  • customizing item renderer

    - by BretzelPretzel
    i would like the label and message to be on the left of the icon....i would also like the icon to be right-aligned what is the best way to do this? I'm confused by some of the tutorials i'm seeing for custom item renderers since they never explain how to format the renderer mxml, so i haven't figured that out yet although i suspect that's what i need to be doing <?xml version="1.0" encoding="utf-8"?> <s:View xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:components="components.*" creationComplete="imagelistings.send()" title="{data.title}"> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.events.FlexEvent; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; import spark.events.IndexChangeEvent; import valueObjects.imagelistingclass; [Bindable] private var listings:ArrayCollection = new ArrayCollection(); protected function toursService_resultHandler(event:ResultEvent):void { var listingarray:ArrayCollection=event.result.Chapter1.entry; var entry:imagelistingclass; for each(var plate:Object in listingarray) { entry=new imagelistingclass(); entry.image=plate.image; entry.location=plate.location; entry.html=plate.html; listings.addItem(entry); } } ]]> </fx:Script> <fx:Declarations> <s:HTTPService id="imagelistings" result="toursService_resultHandler(event)" url="assets/chapter1info.xml"/> </fx:Declarations> <s:List id="theList" left="0" right="0" top="0" bottom="0" alternatingItemColors="#000000" contentBackgroundColor="#404040" dataProvider="{listings}" horizontalScrollPolicy="off" > <s:itemRenderer> <fx:Component> <s:IconItemRenderer color="#FFFFFF" fontSize="30" iconField="location" labelField="" iconFillMode="scale" iconScaleMode="letterbox" iconHeight="125" messageField="image"> </s:IconItemRenderer> </fx:Component> </s:itemRenderer> </s:List>

    Read the article

  • How can i use the Orientation correct for images

    - by user3578109
    I´m learning android/java by myself @the moment and i have a problem with a part of my app i´m learning on. I made the code with help of the www and my problem is that if i open an image from the gallery it´s send to the edit activity but in the activity pictures what are made in portrait mode are displayed always wrong (90° to the right side).... The codes are Matrix private Bitmap rotateBitmapToOrientation(Bitmap b, int orientation){ Matrix matrix = new Matrix(); matrix.postRotate(orientation); Canvas offscreenCanvas = new Canvas(); offscreenCanvas.drawBitmap(b, matrix, null); return b; } and the other one @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); switch (requestCode) { case PICK_IMAGE_FROM_GALLERY: { if (resultCode == RESULT_OK) { Log.d(TAG, "Got Picture!"); Log.d(TAG,"File type - " + data.getType()); Uri photoUri = data.getData(); if (photoUri != null) { try { String[] filePathColumn = {MediaStore.Images.Media.DATA}; String[] orientationColumn = {MediaStore.Images.Media.ORIENTATION}; int orientation = -1; Cursor cursor = getContentResolver().query(photoUri, filePathColumn, null, null, null); cursor.moveToFirst(); int columnIndex = cursor.getColumnIndex(filePathColumn[0]); String filePath = cursor.getString(columnIndex); cursor.close(); cursor = getContentResolver().query(photoUri, orientationColumn, null, null, null); if(cursor != null && cursor.moveToFirst()){ orientation = cursor.getInt(cursor.getColumnIndex(orientationColumn[0])); } cursor.close(); HashMap<String, Integer> pRes = this.getImageResolutionSetting(); Bitmap shrunkenBitmap = FileUtilsHelper.shrinkBitmap(filePath, pRes.get("width"), pRes.get("height")); shrunkenBitmap = rotateBitmapToOrientation(shrunkenBitmap, orientation); String res = FileUtilsHelper.saveBitmapAsJpeg(shrunkenBitmap, this); Log.d(TAG,"File Path: " + res); shrunkenBitmap.recycle(); Intent editImage = new Intent(this, EditImage.class); editImage.addFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); editImage.putExtra("stuff.path", res); startActivity(editImage); }catch(Exception e){ Toast.makeText(this, R.string.cant_save_image,Toast.LENGTH_SHORT).show(); } } } } break; } }} I don´t know what i´m doing wrong... I could really need a teacher on that :) Thx for your help dudes!!

    Read the article

  • Encapsulating a Windows.Forms.Button

    - by devoured elysium
    I want to define a special kind of button that only allows two possible labels: "ON" and "OFF". I decided to inherit from a Windows.Forms.Button to implement this but now I don't know I how should enforce this rule. Should I just override the Text property like this? public override string Text { set { throw new InvalidOperationException("Invalid operation on StartStopButton!"); } } The problem I see with this is that I am breaking the contract that all buttons should have. If any code tries something like foreach (Button button in myForm) { button.Text = "123"; } they will get an Exception if I have any of my special buttons on the form, which is something that isn't expectable. First, because people think of properties just as "public" variables, not methods, second, because they are used to using and setting whatever they want to buttons without having to worry with Exceptions. Should I instead just make the set property do nothing? That could also lead to awkward results: myButton.Text = "abc"; MessageBox.Show(abc); //not "abc"! The general idea from the OO world is to in this kind of cases use Composition instead of inheritance. public class MySpecialButton : <Some class from System.Windows.Forms that already knows how to draw itself on forms> private Button button = new Button(); //I'd just draw this button on this class //and I'd then only show the fields I consider //relevant to the outside world. ... } But to make the Button "live" on a form it must inherit from some special class. I've looked on Control, but it seems to already have the Text property defined. I guess the ideal situation would be to inherit from some kind of class that wouldn't even have the Text property defined, but that'd have position, size, etc properties available. Upper in the hierarchy, after Control, we have Component, but that looks like a really raw class. Any clue about how to achieve this? I know this was a long post :( Thanks

    Read the article

  • Android: Stopping method to be called twice if already running.

    - by user285831
    I'm trying to prevent my application to call the same method twice in the event of a double-click, or if the user presses different buttons quickly, almost at the same time. I have clickable Views, acting as buttons, that call the same method but passing different parameters. This is the call: startTheSearch(context, getState(), what, where); Inside this method I'm creating a new Thread, because it queries a web server for the result: new Thread(new Runnable() { public void run() { progDiag = ProgressDialog.show(ctx, null, "Searching", true); getServerXML(context, what, where, searchIsCustom, mOffset); handler.sendEmptyMessage(0); } }).start(); The problem is that upon two quick clicks, the method is fired twice, two threads are created, and consequently two new activities are created. That makes my app crash. When the methods are done, and we have the result from the server, we call the handler: private Handler handler = new Handler() { @Override public void handleMessage(Message msg) { super.handleMessage(msg); try { Intent i = new Intent(Golf.this, Result.class); Bundle b = new Bundle(); b.putString("what", mWhat); b.putString("where", mWhere); b.putInt("offset", mOffset); b.putBoolean("searchIsCustom", searchIsCustom); i.putExtras(b); startActivityForResult(i, Activity.RESULT_OK); progDiag.dismiss(); } catch (Exception e) { Alerts.generalDialogAlert("Error", "settings", ctx); } } }; I tried to have a global boolean variable called "blocked" initially set to false, creating a condition like: if(!blocked){ blocked = true; new Thread(new Runnable() { public void run() { But this only seems to work on slower phones like the G1, I tried on Nexus and before it set blocked = true, the second request has was granted. So is there any way I can block the method being called if it's already running, or if the thread has started so it wont create a new one? Please, I really need to fix this. I've been developing on Android for almost 2 months now, but I'm yet to tackle that bug. Thanks in advance.

    Read the article

  • How to make area outside of custom dialog view unclickable?

    - by portfoliobuilder
    I created a custom dialog (no, this is not dialog object) from an image and some other views. The conflict I am having with this custom dialog (again, this is a layout) is that the area around it closes the custom dialog. Is there a way I can make the outside area unclickable? I have tried wrapping the dialog view with a fullscreen frameLayout w/ transparent background, and then programmatically I set the frame attribute to setClickable(false). framelayout.setClickable(false); This does nothing. It still closes the dialog. Any other suggestions? Thank you in advance. This is my code: //used to disable background from closing the custom dialog private FrameLayout fl; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.layout_dialog); btnContinue = (Button) findViewById(R.id.btnContinue); btnContinue.setOnClickListener(this); fl.setClickable(false); //background suppose to lock } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.Continue: finish(); } break; } } I also have another class for broadcastReceiver public class DialogManagerBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if(IdeaPlayInterfaceApplication.isActivityVisible()){ Intent i=new Intent(context,CustomDialogActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } } } The idea is that this custom dialog is not called at a specific instance, it is called every set amount of time no matter what I am doing in the application. I use an Intent and PendingIntent to repeatedly call this custom dialog over time. With something like this: cancelAlarmNotificationMonitoring(context); Calendar calendar = Calendar.getInstance(); Intent intent = new Intent(context, AlarmManagerBroadcastReceiver.class); PendingIntent pintent = PendingIntent.getBroadcast(context, 0, intent, 0); AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); alarm.setRepeating(AlarmManager.RTC_WAKEUP,calendar.getTimeInMillis()+ALARM_INTERVAL,ALARM_INTERVAL, pintent); Hopefully this is more clear now.

    Read the article

  • curl problems in c++ class

    - by Danilo
    I read a few articles on c++ / curl here on stackoverflow and assembled the following. The main goal is to handle the whole request in an instance of a class -- and maybe later in a secondary thread. My problem is: "content_" seems to stay empty though its the same addr and HttpFetch.h: class HttpFetch { private: CURL *curl; static size_t handle(char * data, size_t size, size_t nmemb, void * p); size_t handle_impl(char * data, size_t size, size_t nmemb); public: std::string content_; static std::string url_; HttpFetch(std::string url); void start(); std::string data(); }; HttpFetch.cpp: HttpFetch::HttpFetch(std::string url) { curl_global_init(CURL_GLOBAL_ALL); //pretty obvious curl = curl_easy_init(); content_.append("Test"); std::cout << &content_ << "\n"; curl_easy_setopt(curl, CURLOPT_URL, &url); curl_easy_setopt(curl, CURLOPT_WRITEDATA, &content_); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, &HttpFetch::handle); //curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); //tell curl to output its progress curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); //std::cout << &content_ << "\n"; } void HttpFetch::start() { curl_easy_perform(curl); curl_easy_cleanup(curl); } size_t HttpFetch::handle(char * data, size_t size, size_t nmemb, void * p) { std::string *stuff = reinterpret_cast<std::string*>(p); stuff->append(data, size * nmemb); std::cout << stuff << "\n"; // has content from data in it! return size * nmemb; } main.cpp: #include "HttpFetch.h" int main(int argc, const char * argv[]) { HttpFetch call = *new HttpFetch("http://www.example.com"); call.start(); ::std::cout << call.content_ << "\n" } Thanks in advance

    Read the article

  • Java Sorting "queue" list based on DateTime and Z Position (part of school project)

    - by Kuchinawa
    For a school project i have a list of 50k containers that arrive on a boat. These containers need to be sorted in a list in such a way that the earliest departure DateTimes are at the top and the containers above those above them. This list then gets used for a crane that picks them up in order. I started out with 2 Collection.sort() methods: 1st one to get them in the right XYZ order Collections.sort(containers, new Comparator<ContainerData>() { @Override public int compare(ContainerData contData1, ContainerData contData2) { return positionSort(contData1.getLocation(),contData2.getLocation()); } }); Then another one to reorder the dates while keeping the position in mind: Collections.sort(containers, new Comparator<ContainerData>() { @Override public int compare(ContainerData contData1, ContainerData contData2) { int c = contData1.getLeaveDateTimeFrom().compareTo(contData2.getLeaveDateTimeFrom()); int p = positionSort2(contData1.getLocation(), contData2.getLocation()); if(p != 0) c = p; return c; } }); But i never got this method to work.. What i got working now is rather quick and dirty and takes a long time to process (50seconds for all 50k): First a sort on DateTime: Collections.sort(containers, new Comparator<ContainerData>() { @Override public int compare(ContainerData contData1, ContainerData contData2) { return contData1.getLeaveDateTimeFrom().compareTo(contData2.getLeaveDateTimeFrom()); } }); Then a correction function that bumps top containers up: containers = stackCorrection(containers); private static List<ContainerData> stackCorrection(List<ContainerData> sortedContainerList) { for(int i = 0; i < sortedContainerList.size(); i++) { ContainerData current = sortedContainerList.get(i); // 5 = Max Stack (0 index) if(current.getLocation().getZ() < 5) { //Loop through possible containers above current for(int j = 5; j > current.getLocation().getZ(); --j) { //Search for container above for(int k = i + 1; k < sortedContainerList.size(); ++k) if(sortedContainerList.get(k).getLocation().getX() == current.getLocation().getX()) { if(sortedContainerList.get(k).getLocation().getY() == current.getLocation().getY()) { if(sortedContainerList.get(k).getLocation().getZ() == j) { //Found -> move container above current sortedContainerList.add(i, sortedContainerList.remove(k)); k = sortedContainerList.size(); i++; } } } } } } return sortedContainerList; } I would like to implement this in a better/faster way. So any hints are appreciated. :)

    Read the article

  • Entity Framework: An object with the same key already exists in the objectstatemanager

    - by NealR
    I see that this question has been asked a lot, however I haven't found anything yet that solves the problem I'm having. Obviously i'm using the Entity Framework to perform an update to a record. Once the updates are complete, however, whenever I try to save I get the following error message: An object with the same key already exists in the objectstatemanager At first I was passing in a collection object from the view that contained a copy of the the ZipCodeTerritory model object zipToUpdate. I changed the code by pulling this object out and just sending in the relevant fields instead. However, I'm still getting the same error. What's also weird is the first time I run this code, it works fine. Any attempt after that I get the error. Controller Here is the code from the method calling the edit function public static string DescriptionOnly(ZipCodeIndex updateZip) { if (!string.IsNullOrWhiteSpace(updateZip.newEffectiveDate) || !string.IsNullOrWhiteSpace(updateZip.newEndDate)) { return "Neither effective or end date can be present if updating Territory Code only; "; } _updated = 0; foreach (var zipCode in updateZip.displayForPaging.Where(x => x.Update)) { ProcessAllChanges(zipCode, updateZip.newTerritory, updateZip.newStateCode, updateZip.newDescription, updateZip.newChannelCode); } _msg += _updated + " record(s) updated; "; return _msg; } And here is the method that actually does the updating. private static void ProcessAllChanges(ZipCodeTerritory zipToUpdate, string newTerritory, string newStateCode, string newDescription, string newChannelCode) { try { if (!string.IsNullOrWhiteSpace(newTerritory)) zipToUpdate.IndDistrnId = newTerritory; if (!string.IsNullOrWhiteSpace(newStateCode)) zipToUpdate.StateCode = newStateCode; if (!string.IsNullOrWhiteSpace(newDescription)) zipToUpdate.DrmTerrDesc = newDescription; if (!string.IsNullOrWhiteSpace(newChannelCode)) zipToUpdate.ChannelCode = newChannelCode; if (zipToUpdate.EndDate == DateTime.MinValue) zipToUpdate.EndDate = DateTime.MaxValue; _db.Entry(zipToUpdate).State = EntityState.Modified; _db.SaveChanges(); _updated++; } catch (DbEntityValidationException dbEx) { _msg += "Error during update; "; EventLog.WriteEntry("Monet", "Error during ProcessAllChanges: " + zipToUpdate.ToString() + " |EX| " + dbEx.Message); } catch (Exception ex) { _msg += "Error during update; "; EventLog.WriteEntry("Monet", "Error during ProcessAllChanges: " + zipToUpdate.ToString() + " |MESSAGE| " + ex.Message); } } EDIT The ZipCodeIndex object contains a list of ZipCodeTerritory model objects. These aren't being pulled from a linq query, but instead simply passed back to the controller from the view. Here is the signature of the controller method that starts the process: [HttpPost] public ActionResult Update(ZipCodeIndex updateZip, string button)

    Read the article

  • NullPointerException while trying to bind at SimpleCursorAdapter

    - by hrskrs
    I have asked a question before where i found my mistake. However now i am facing with another problem. I have checked all the similar errors asked on StackOverflow but without success.Any help is appriciated. The idea here is that i am getting image names from DB so depending on those names images from Drawable folder will be shown in a listView together with a description but im getting an error of NullPointException at setViewValue. Here is the code snippet: private void populateListView() { ListView customListView = (ListView)findViewById(R.id.lvCustom); Cursor cursor = DBhelper.getAllimages(); startManagingCursor(cursor); String[] from = { DBhelper.COLUMN_PIC_URL, DBhelper.COLUMN_PIC_DESC}; int[] to = {R.id.ivImg, R.id.tvTitle}; SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter(this, R.layout.custom_listview_row, cursor, from, to, 0); cursorAdapter.setViewBinder(new ViewBinder() { @Override public boolean setViewValue(View view, Cursor cursor, int columnIndex) { ImageView imageImageView = (ImageView)findViewById(R.id.ivImg); String[] imgNames = new String[cursor.getCount()]; int[] imgResourceIds = new int[cursor.getCount()]; for(int i=0; i<cursor.getCount(); i++){ imgNames[i] = cursor.getString(cursor.getColumnIndex(DBhelper.COLUMN_PIC_URL)); imgResourceIds[i] = getResources().getIdentifier(imgNames[i], "drawable", getPackageName()); imageImageView.setImageResource(imgResourceIds[i]); cursor.moveToNext(); } return true; } }); customListView.setAdapter(cursorAdapter); } Here is the Error from LogCat: I have tried to log the output of imgNames[i] where it returns the url pic from the DB correctly and imgResourceIds[i] where it return the image resource id correctly also(it does not return NULL but something like: 295731). But it stops at imageImageView.setImageResource(imgResourceIds[i]); To see from where that NullPointerException is coming, i commented out imageImageView.setImageResource(imgResourceIds[i]);. This time imageNames(those with a TAG) and imgResourceIds(those system printed out) came correctly but doubled, when i removed cursor.MoveToNext() last row were doubled. Here is the screen shot of that: I have tried all the suggestions on stack about gettin a NullException but without success. Any idea where i am doing mistake?

    Read the article

  • Asyncronous While Loop?

    - by o7th Web Design
    I have a pretty great SqlDataReader wrapper in which I can map the output into a strongly typed list. What I am finding now is that on larger datasets with larger numbers of columns, performance could probably be a bit better if I can optimize my mapping. In thinking about this there is one section in particular that I am concerned about as it seems to be the heaviest hitter: while (_Rdr.Read()) { T newObject = new T(); for (int i = 0; i <= _Rdr.FieldCount - 1; ++i) { PropertyInfo info = (PropertyInfo)_ht[_Rdr.GetName(i).ToUpper()]; if ((info != null) && info.CanWrite) { info.SetValue(newObject, (_Rdr.GetValue(i) is DBNull) ? default(T) : _Rdr.GetValue(i), null); } } _en.Add(newObject); } _Rdr.Close(); What I would really like to know, is if there is a way that I can make this loop asyncronous? I feel that will make all the difference in the world with this beast :) Here is the entire Map method in case anyone can see where I can make further improvements on it... IList<T> Map<T> // Map our datareader object to a strongly typed list private static IList<T> Map<T>(IDataReader _Rdr) where T : new() { try { Type _t = typeof(T); List<T> _en = new List<T>(); Hashtable _ht = new Hashtable(); PropertyInfo[] _props = _t.GetProperties(); Parallel.ForEach(_props, info => { _ht[info.Name.ToUpper()] = info; }); while (_Rdr.Read()) { T newObject = new T(); for (int i = 0; i <= _Rdr.FieldCount - 1; ++i) { PropertyInfo info = (PropertyInfo)_ht[_Rdr.GetName(i).ToUpper()]; if ((info != null) && info.CanWrite) { info.SetValue(newObject, (_Rdr.GetValue(i) is DBNull) ? default(T) : _Rdr.GetValue(i), null); } } _en.Add(newObject); } _Rdr.Close(); return _en; }catch(Exception ex){ _Msg += "Wrapper.Map Exception: " + ex.Message; ErrorReporting.WriteEm.WriteItem(ex, "o7th.Class.Library.Data.Wrapper.Map", _Msg); return default(IList<T>); } }

    Read the article

  • safe dereferencing and deletion

    - by serejko
    Hi, I'm relatively new to C++ and OOP in general and currently trying to make such a class that allows to dereference and delete a dead or invalid pointer without any care of having undefined behavior or program fault in result, and I want to ask you is it a good idea and is there something similar which is already implemented by someone else? or maybe I'm doing something completely wrong? I've just started making it and here is the code I currently have: template<class T> class SafeDeref { public: T& operator *() { hash_set<T*>::iterator it = theStore.find(reinterpret_cast<T*>(ptr)); if (it != theStore.end()) return *this; return theDefaultObject; } T* operator ->() { hash_set<T*>::iterator it = theStore.find(reinterpret_cast<T*>(ptr)); if (it != theStore.end()) return this; return &theDefaultObject; } void* operator new(size_t size) { void* ptr = malloc(size * sizeof(T)); if (ptr != 0) theStore.insert(reinterpret_cast<T*>(ptr)); return ptr; } void operator delete(void* ptr) { hash_set<T*>::iterator it = theStore.find(reinterpret_cast<T*>(ptr)); if (it != theStore.end()) { theStore.erase(it); free(ptr); } } protected: static bool isInStore(T* ptr) { return theStore.find(ptr) != theStore.end(); } private: static T theDefaultObject; static hash_set<T*> theStore; }; The idea is that each class with the safe dereference should be inherited from it like this: class Foo : public SafeDeref<Foo> { void doSomething(); }; So... Any advices? Thanks in advance. P.S. If you're wondering why I need this... well, I'm creating a set of native functions for some scripting environment, and all of them use pointers to internally allocated objects as handles to them and they're able to delete them as well (input data can be wrong), so this is kinda protection from damaging host application's memory And I really sorry for my bad English

    Read the article

  • Custom InputIterator for Boost graph (BGL)

    - by Shadow
    Hi, I have a graph with custom properties to the vertices and edges. I now want to create a copy of this graph, but I don't want the vertices to be as complex as in the original. By this I mean that it would suffice that the vertices have the same indices (vertex_index_t) as they do in the original graph. Instead of doing the copying by hand I wanted to use the copy-functionality of boost::adjacency_list (s. http://www.boost.org/doc/libs/1_37_0/libs/graph/doc/adjacency_list.html): template <class EdgeIterator> adjacency_list(EdgeIterator first, EdgeIterator last, vertices_size_type n, edges_size_type m = 0, const GraphProperty& p = GraphProperty()) The description there says: The EdgeIterator must be a model of InputIterator. The value type of the EdgeIterator must be a std::pair, where the type in the pair is an integer type. The integers will correspond to vertices, and they must all fall in the range of [0, n). Unfortunately I have to admit that I don't quite get it how to define an EdgeIterator that is a model of InputIterator. Here's what I've succeded so far: template< class EdgeIterator, class Edge > class MyEdgeIterator// : public input_iterator< std::pair<int, int> > { public: MyEdgeIterator() {}; MyEdgeIterator(EdgeIterator& rhs) : actual_edge_it_(rhs) {}; MyEdgeIterator(const MyEdgeIterator& to_copy) {}; bool operator==(const MyEdgeIterator& to_compare) { return actual_edge_it_ == to_compare.actual_edge_it_; } bool operator!=(const MyEdgeIterator& to_compare) { return !(*this == to_compare); } Edge operator*() const { return *actual_edge_it_; } const MyEdgeIterator* operator->() const; MyEdgeIterator& operator ++() { ++actual_edge_it_; return *this; } MyEdgeIterator operator ++(int) { MyEdgeIterator<EdgeIterator, Edge> tmp = *this; ++*this; return tmp; } private: EdgeIterator& actual_edge_it_; } However, this doesn't work as it is supposed to and I ran out of clues. So, how do I define the appropriate InputIterator?

    Read the article

  • Name hiding from inherited classes

    - by Mercerbearman
    I have the following sample code and I wanted to know the correct way to get access to the Pass method in the CBar class. Currently I have found 3 ways to get access to this method and they are as follows: Casting the object, ((CBar *) &foo)-Pass(1, 2, 3); Using this syntax, foo.CBar::Pass(1,2,3); Use the "using" syntax in the CFoo class declaration, using CBar::Pass. The following is an example of a simple project to test this capability. Foo.h #include "bar.h" class CFoo : public CBar { private: double m_a; double m_b; public: CFoo(void); ~CFoo(void); void Pass(double a, double b); }; Foo.cpp #include "Foo.h" CFoo::CFoo(void) { m_a = 0.0; m_b = 0.0; } CFoo::~CFoo(void) { } void CFoo::Pass(double a, double b) { m_a = a; m_b = b; } Bar.h class CBar { int m_x; int m_y; int m_z; public: CBar(void); ~CBar(void); void Pass(int x, int y, int z); }; Bar.cpp #include "Bar.h" CBar::CBar(void) { m_x = 0; m_y = 0; m_z = 0; } CBar::~CBar(void) { } void CBar::Pass(int x, int y, int z) { m_x = x; m_y = y; m_z = z; } And my main class DoStuff.cpp #include "DoStuff.h" #include "Foo.h" CDoStuff::CDoStuff(void) { } CDoStuff::~CDoStuff(void) { } int main() { CFoo foo, foo1, foo2; //This only gets to the Pass method in Foo. foo.Pass(2.5, 3.5); //Gets access to Pass method in Bar. foo1.CBar::Pass(5,10,15); //Can also case and access by location for the same result?? ((CBar *) &foo2)->Pass(100,200,300); return 0; } Are each of these options viable? Are some preferred? Are there pitfalls with using any one of the methods listed? I am especially curious about the foo.CBar::Pass(1,2,3) syntax. Thanks, B

    Read the article

  • Boost MultiIndex - objects or pointers (and how to use them?)?

    - by Sarah
    I'm programming an agent-based simulation and have decided that Boost's MultiIndex is probably the most efficient container for my agents. I'm not a professional programmer, and my background is very spotty. I've two questions: Is it better to have the container contain the agents (of class Host) themselves, or is it more efficient for the container to hold Host *? Hosts will sometimes be deleted from memory (that's my plan, anyway... need to read up on new and delete). Hosts' private variables will get updated occasionally, which I hope to do through the modify function in MultiIndex. There will be no other copies of Hosts in the simulation, i.e., they will not be used in any other containers. If I use pointers to Hosts, how do I set up the key extraction properly? My code below doesn't compile. // main.cpp - ATTEMPTED POINTER VERSION ... #include <boost/multi_index_container.hpp> #include <boost/multi_index/hashed_index.hpp> #include <boost/multi_index/member.hpp> #include <boost/multi_index/ordered_index.hpp> #include <boost/multi_index/mem_fun.hpp> #include <boost/tokenizer.hpp> typedef multi_index_container< Host *, indexed_by< // hash by Host::id hashed_unique< BOOST_MULTI_INDEX_MEM_FUN(Host,int,Host::getID) > // arg errors here > // end indexed_by > HostContainer; ... int main() { ... HostContainer testHosts; Host * newHostPtr; newHostPtr = new Host( t, DOB, idCtr, 0, currentEvents ); testHosts.insert( newHostPtr ); ... } I can't find a precisely analogous example in the Boost documentation, and my knowledge of C++ syntax is still very weak. The code does appear to work when I replace all the pointer references with the class objects themselves. As best I can read it, the Boost documentation (see summary table at bottom) implies I should be able to use member functions with pointer elements.

    Read the article

< Previous Page | 638 639 640 641 642 643 644 645 646 647 648 649  | Next Page >